STL组件:容器、迭代器、算法
容器:序列式容器、关联式容器、无序容器
序列式容器:array、vector、deque、list、forward_list
vector:可变大小数组。支持快速随机访问。在尾部之外插入和删除元素可能会比较慢
deque:双端队列。支持快速随机访问。在头尾位置插入和删除速度很快
list:双向链表。支持双向顺序访问。在list中任意位置插入删除元素都很快
forward_list:单向链表。只支持单向顺序访问。在任意位置插入和删除元素都很快
array:固定大小数组。支持快速随机访问。不能添加和删除元素
string:与vector类似。
关联式容器:map、set、multimap、multiset
无序容器:unorder
dequence容器的实现一般是array或者linked list
associated容器的实现一般是binary tree
unorder容器的实现一般是hash_table
vector
dynamic array 随着vector元素的增加 vector不停地开辟内存空间 capacity
验证这一点的代码: