您的位置:首页 > 编程语言 > C语言/C++

C++ STL容器参考手册 (总册)

2017-06-18 15:46 344 查看


原文链接:http://www.cnblogs.com/barney-li/p/4186681.html


3. 专有名词的翻译规范

专用名词的翻译在不同的资料中会有较大的差异,本文遵循如下的翻译规范:

allocator 分配器
array 数组容器(当主语代表数组容器时)/数组(当主语代表普通数组时)
deque 双向队列
forward list 单链表
list 链表
map 映射
queue 队列
set 集合
stack 栈
unordered map 无序映射
unordered set 无序集合
vector 动态数组
priority queue 优先队列
 

 


4. 本系列的原文

http://www.cplusplus.com/reference/stl/
 


5. 标准容器

容器,正如其字面意思,是存储了一组对象的数据集合(这里的每个对象都是这个容器的元素),当然了这里的容器本身也是一个对象。所有的容器都被设计成为模板类,这样一来容器可存储的元素类型就具有非常大的灵活性。
容器负责管理自身用以存储元素的物理空间,并且提供了成员函数来访问这些元素 -- 有直接访问的方式也有通过迭代器(具有类似指针的属性)访问的方式。
容器实现了程序设计中非常常见的结构:动态数组(vector),队列(queue),栈(stack),堆(priority_queue),链表(list),树(set),关联数组(map)...
许多不同的容器具有相同的成员函数,并且共享一些功能。在决定使用哪一种具体的容器时,不仅仅需要考虑到容器提供的功能,同时也要考虑到访问其成员的效率(复杂度)。尤其是对于序列容器,这些容器在插入/删除元素与访问元素的复杂度之间有着不同的权衡。
stack, queue以及priority_queue被实现为容器适配器。容器适配器并不是完整的容器,而是一个提供了某些特定接口的类,容器适配器将一个容器封装起来,然后就可以通过容器适配器提供的这些接口来访问这个容器的元素。
 


6. 容器模板类

序列容器
 
array (c++11 only)数组类 (模板类)
vector动态数组 (模板类)
deque双端队列 (模板类)
forward_list单链表 (模板类)
list (c++11 only)链表 (模板类)
容器适配器
 
stack先入后出栈 (模板类)
queue先入先出队列 (模板类)
priority_queue优先队列 (模板类)
关联容器
set集合 (模板类)
multiset多重集合 (模板类)
map映射 (模板类)
multimap多重影射 (模板类)
无序关联容器
unordered_set无序集合 (模板类)
unordered_multiset无序多重集合 (模板类)
unordered_map无序映射 (模板类)
unordered_multimap无序多重映射 (模板类)
 


7. 成员列表

序列容器
Headers<array><vector><deque><forward_list><list>
Membersarrayvectordequeforward_listlist
 constructorarray<T,n>vectordequeforward_listlist
destructorimplicit~vector~deque~forward_list~list
operator=implicitoperator=operator=operator=operator=
iteratorsbeginbeginbeginbeginbegin
before_begin
begin
endendendendendend
rbeginrbeginrbeginrbegin rbegin
rendrendrendrend rend
const iteratorscbegincbegincbegincbegincbegin
cbefore_begin
cbegin
cendcendcendcendcendcend
crbegincrbegincrbegincrbegin crbegin
crendcrendcrendcrend crend
capacitysizesizesizesize size
max_sizemax_sizemax_sizemax_sizemax_sizemax_size
emptyemptyemptyemptyemptyempty
resize resizeresizeresizeresize
shrink_to_fit shrink_to_fitshrink_to_fit  
capacity capacity   
reserve reserve   
element accessfrontfrontfrontfrontfrontfront
backbackbackback back
operator[]operator[]operator[]operator[]  
atatatat  
modifiersassign assignassignassignassign
emplace emplaceemplaceemplace_afteremplace
insert insertinsertinsert_afterinsert
erase eraseeraseerase_aftererase
emplace_back emplace_backemplace_back emplace_back
push_back push_backpush_back push_back
pop_back pop_backpop_back pop_back
emplace_front  emplace_frontemplace_frontemplace_front
push_front  push_frontpush_frontpush_front
pop_front  pop_frontpop_frontpop_front
clear clearclearclearclear
swapswapswapswapswapswap
list operationssplice   splice_aftersplice
remove   removeremove
remove_if   remove_ifremove_if
unique   uniqueunique
merge   mergemerge
sort   sortsort
reverse   reversereverse
observersget_allocator get_allocatorget_allocatorget_allocatorget_allocator
datadatadata   
关联容器
Headers<set><map><unordered_set><unordered_map>
Memberssetmultisetmapmultimapunordered_setunordered_multisetunordered_mapunordered_multimap
 constructorsetmultisetmapmultimapunordered_setunordered_multisetunordered_mapunordered_multimap
destructor~set~multiset~map~multimap~unordered_set~unordered_multiset~unordered_map~unordered_multimap
assignmentoperator=operator=operator=operator=operator=operator=operator=operator=
iteratorsbeginbeginbeginbeginbeginbeginbeginbeginbegin
endendendendendendendendend
rbeginrbeginrbeginrbeginrbegin    
rendrendrendrendrend    
const iteratorscbegincbegincbegincbegincbegincbegincbegincbegincbegin
cendcendcendcendcendcendcendcendcend
crbegincrbegincrbegincrbegincrbegin    
crendcrendcrendcrendcrend    
capacitysizesizesizesizesizesizesizesizesize
max_sizemax_sizemax_sizemax_sizemax_sizemax_sizemax_sizemax_sizemax_size
emptyemptyemptyemptyemptyemptyemptyemptyempty
reserve    reservereservereservereserve
element accessat  at   at 
operator[]  operator[]   operator[] 
modifiersemplaceemplaceemplaceemplaceemplaceemplaceemplaceemplaceemplace
emplace_hintemplace_hintemplace_hintemplace_hintemplace_hintemplace_hintemplace_hintemplace_hintemplace_hint
insertinsertinsertinsertinsertinsertinsertinsertinsert
eraseeraseeraseeraseeraseeraseeraseeraseerase
clearclearclearclearclearclearclearclearclear
swapswapswapswapswapswapswapswapswap
operationscountcountcountcountcountcountcountcountcount
findfindfindfindfindfindfindfindfind
equal_rangeequal_rangeequal_rangeequal_rangeequal_rangeequal_rangeequal_rangeequal_rangeequal_range
lower_boundlower_boundlower_boundlower_boundlower_bound    
upper_boundupper_boundupper_boundupper_boundupper_bound    
observersget_allocatorget_allocatorget_allocatorget_allocatorget_allocatorget_allocatorget_allocatorget_allocatorget_allocator
key_compkey_compkey_compkey_compkey_comp    
value_compvalue_compvalue_compvalue_compvalue_comp    
key_eq    key_eqkey_eqkey_eqkey_eq
hash_function    hash_functionhash_functionhash_functionhash_function
bucketsbucket    bucketbucketbucketbucket
bucket_count    bucket_countbucket_countbucket_countbucket_count
bucket_size    bucket_sizebucket_sizebucket_sizebucket_size
max_bucket_count    max_bucket_countmax_bucket_countmax_bucket_countmax_bucket_count
hash policyrehash    rehashrehashrehashrehash
load_factor    load_factorload_factorload_factorload_factor
max_load_factor    max_load_factormax_load_factormax_load_factormax_load_factor
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: