目录
一.vector 构造函数
二 . Iterators 迭代器(random access iterator)
三.Capacity: 空间
3.1 resize
3.2 reserve
四.Element access: 元素访问 方式
4.1 operator[] 类似于数组的 []
4.2 front 和back
五.Modifiers:
六.vector 的 二维数组理解
一.vector 构造函数
常见的构造,比如:
二 . Iterators 迭代器(
random access iterator)
迭代器 :begin 和 end
迭代器 :rbegin 和 rend
三.Capacity: 空间
容量空间 | 接口说明 |
size | 获取数据个数 |
capacity | 获取容量大小 |
empty | 判断是否为空 |
resize(重点) | 改变vector的size |
reserve (重点) | 改变vector的capacity |
3.1 resize
如果 n 小于当前容器大小,则内容将减少到其前 n 个元素,删除超出此部分的元素(并销毁它们)。
如果 n 大于当前容器大小,则通过在末尾插入所需数量的元素来扩展内容,以达到 n 的大小。如果指定了 val ,则新元素将初始化为 val 的副本,否则,它们将进行值初始化.
如果 n 也大于当前容器容量,则会自动重新分配分配的存储空间(capacity)。
3.2 reserve
如果 n 大于当前向量容量,则该函数会导致容器重新分配其存储,将其容量增加到 n(或更大)。
在所有其他情况下,函数调用不会导致重新分配,并且向量容量不受影响。
四.Element access: 元素访问 方式
4.1 operator[] 类似于数组的 []
4.2 front 和back
五.Modifiers:
超链接自己查询
push_back | 从后面插入一个元素 |
pop_back | 从后面删除一个元素 |
insert | 从任意位置插入一个元素 |
erase | 从任意位置删除一个元素 |
clear | 清除所有元素 |
六.vector 的 二维数组理解
其底层是由 3个 指针 进行 访问的
vector二维数组: