제7 7 장 용기 와 데이터 구조
3991 단어 boost
#include <iostream>
#include <boost/array.hpp>
#include <boost/typeof/typeof.hpp>
int main()
{
boost::array<int,10> arr; // 10 int , boost::array<int,3> arr = {1,2,3}
arr[0] = 1;
arr.back() = 2; // 2
arr.assign(100); // 100
for(BOOST_AUTO(pos,arr.begin()); pos != arr.end(); ++pos)
{
std::cout<<*pos<<",";
}
int *p = arr.c_array(); //
*(p+5) = 5;
std::cout<<"
"<<arr[5]<<std::endl;
int *p_onlyread = arr.data(); //
*(p_onlyread+5) = 3;
std::sort(arr.begin(),arr.end());
for(BOOST_AUTO(pos,arr.begin()); pos != arr.end(); ++pos)
{
std::cout<<*pos<<",";
}
std::cout<<"
array's size:"<<arr.size()<<std::endl;
}
C + + 98 표준 은 바 이 너 리 수 치 를 처리 하 는 데 두 가지 도 구 를 제공 합 니 다: vector < bool > 과 bitset.전 자 는 동태 적 으로 증가 할 수 있 으 나 편리 하 게 비트 연산 을 할 수 없다.후 자 는 반대 다.
잠시 생략 하고 필요 할 때 vector < bool > 과 bitset 를 함께 연구 합 니 다.
해시 용기 (hash container) 는 보통 이 진 트 리 의 저장 방식 보다 더 높 은 접근 효율 을 제공 합 니 다.SGISTL, STLport 등 은 모두 각자 의 해시 용 기 를 실 현 했 고 이름 은 모두 hash 이다.set、hash_map, 기 존 코드 와 의 충돌 을 피하 기 위해 unordered 라 고 이름 을 지 었 습 니 다.xxx 의 형식 은 동시에 그것 이 무질서 하 다 는 것 을 나타 낸다.
산열 집합 unorderedset/unordered_multiset 는 표준 관련 용기 set / multiset 용법 과 같 습 니 다. 다만 내부 에 서 는 이 진 트 리 대신 산 목록 을 사용 하여 복잡 도 를 대수 에서 상수 로 낮 춥 니 다.
산열 매 핑 unorderedmap/unordered_multimap 는 위 와 같 습 니 다.
표준 라 이브 러 리 에서 제공 하 는 map / multimap 는 단 방향 맵 관계 로 < boost / bimap. hpp > 는 양 방향 맵 관 계 를 제공 합 니 다. 그 인 터 페 이 스 는 학습 부담 을 줄 이기 위해 STL 규범 에 부합 하도록 특별히 설계 되 었 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Cocos2d-x에서 Boost 사용iOS 및 Android 프로젝트에서 Boost를 사용하는 단계 노트 타이틀은 Cocos2d-x로 했지만 C++를 사용하는 프로젝트라면 따로 Cocos2d-x는 없어도 사용 가능 ※ 단, 헤더 전용으로 사용할 수있는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.