分类
顺序性容器、关联式容器、容器适配器
顺序性容器:可变长动态数组Vector,双端队列deque,双向链表list
特点:顺序存储
关联性容器:set,multiset,map,multimap
特点:链式存储
关联容器是使用红黑树实现的,它的元素是排序的,所以查找时具有非常好的性能。
容器适配器:栈stack、队列queue、优先队列priority_queue
适配器是容器的接口,它本身不能直接保存元素,它保存元素的机制是调用另一种顺序容器去实现,即可以把适配器看作它保存一个容器,这个容器再保存所有元素。
默认下stack 和queue 基于deque 容器实现,priority_queue 则基于vector 容器实现。创建适配器时在第二个参数上指定具体的顺序容器可以覆盖适配器的默认实现。
注意:
1.由于stack的特点是后进先出,所以必须有push_back(),pop_back(),back
2.由于queue的特点是先进先出,所以必须有push_back(),pop_front()---因此不能建立在vector上
3.由于priority_queue的特点是随机访问,因此不能建立在list上
特点
1.所有容器具有的函数:
size();
empty();
2.顺序容器和关联容器共有函数:
insert();
begin();
end();
rbegin();
erase();
clear();
3.顺序容器独有的函数
front();
back();
push_back();
pop_back();
4.关联容器独有的函数
find()