STL:三大概念容器 算法 迭代器
STL的組成六大组件(concepts:概念):
容器(container):用来管理一组元素的
序列式容器:vector 单端开口的队列,deque双端开口队列,list 链表,
非序列式容器(关联式容器:红黑树):set/multist 和 map/mulitmap ,元素的位置取决于排序规则
算法(algorithm):变异和非变异
迭代器(iterator):
仿函数(function object):重载小括号
适配器(adaptor)
空间配置器(allocator)
一、vector(单端开放)的内存分配
vector:Dynamic array(动态数组)
如果定义了 std::vector<int> x(2,6);
那么就会开辟一个空间存入
6 | 6 |
当我们进行 x.push_back(1);的时候空间不够,就会自动扩容两倍,