动态数组的顺序容器,能感知内存分配器
- 闭开区间
- 要么数量和初始值,要么有另一个数组
- 数组操作需要给定位置
//1.闭开区间 2.要么数量和初始值,要么有另一个数组 3.给定位置
#pragma region 创建
int a[5] = {1,2,3,4,5};
vector<int> v1 = vector<int>(); //空构造函数
vector<int> v2 = vector<int>(10); // 给元素个数
vector<int> v3 = vector<int>(10,1);// 给元素个数,和初始值
vector<int> v4 = vector<int>(a,a+5); //普通数组转vector,闭开区间
vector<int> v5 = vector<int>(v4.begin(),v4.end()); //vector 转 vector,闭开区间
vector<int> v6 = vector<int>(v3); // 拷贝构造函数
#pragma endregion
#pragma region 增
v3.push_back(1);//尾部增加
v3.insert(v3.begin(),0); //指定迭代器的位置插入,其他往后退,时间复杂度O(n);
v3.insert(v3.begin(),10,0);//指定位置插入10个数据
v3.insert(v3.begin(),a,a+5);//指定位置插入另一个数组
#pragma endregion
#pragma region 删
v3.erase(v3.begin());//指定