C++容器的分类-创新互联
一.sequence containers
创新互联是一家专注于做网站、成都网站制作与策划设计,大同网站建设哪家好?创新互联做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:大同等地区。大同做网站价格咨询:189820811081.array:数组封装类
2.vector: 单向生长
3.deque: 双向生长
4.list: 双向链表,通过指针链接相邻的两个元素
5.forward-list:单向链表,比list更省内存
二.associative containers
set/multiset: value是key,mutil表示value的值可以重复
map/multimap: value和key值分开,通过key值得到value的值
unordered_set/unordered_map/unordered_multiset/unordered_multimap: 采用separate chaining原理,背后是hashtable,hashtable下面挂了很多像篮子一样的指针,这些指针存放在vector的容器内,篮子内的元素可以是单向列表也可以是双向列表,元素的总数不超过篮子的总数,当等于篮子数量的时候,篮子的数量会成长为之前数量的两倍,这个过程叫做rehashing,篮子内的元素会通过hash function计算出来的hash code重新选择放入哪个篮子中。
三.容器的定义
template
class vector : protected _Vector_base<_Tp, _alloc>
template
class list : protected _List_base<_Tp, _alloc>
template
class set
template
class map
template
class unordered_set
template
class unordered_map
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
新闻名称:C++容器的分类-创新互联
网页地址:http://scyanting.com/article/jpohs.html