C++ Vector
创建 vector #include <vector> vector<int> v0; // 创建一个初始空间为 3 的 vector,元素默认值为 0 vector<int> v1(3); // 创建一个初始空间为 3 的 vector,元素默认值是 2 vector<int> v2(3, 2); // 创建一个 v2 的拷贝 v3,元素内容和 v2 一样 vector<int> v3(v2); // 创建一个 v3 的拷贝到 v4,内容是 { v3[1], v3[2] },包前不包后; vector<int> v4(v3.begin() + 1, v3.begin() + 3); 元素访问 vector.at(pos) 返回 vector 中下标为 pos 的引用 vector[pos] 返回 vector 中下标为 pos 的引用,不执行越界检查 vector.front() 返回首元素的引用(vector.begin() 是迭代器,和这个不同) vector.back() 返回末元素的引用 (vector.end() 是迭代器,没有元素,和这个不同) vector.data() 返回首元素的指针(vector 的空间是连续的) 迭代器 vector.begin() 返回首元素的迭代器,*begin = front vector.end() 返回末元素的迭代器,没有元素 vector.rbegin() 返回指向逆向数组的首元素的迭代器,可以理解为正向容器的末元素 vector.rend() 返回指向逆向数组末元素后一位置的迭代器,对应容器首的前一个位置,没有元素 上述迭代器名前加上一个 c 为只读迭代器 长度和容量 注意,vector 的长度(size)指有效元素数量,而容量(capacity)指分配的内存长度 ...