介绍
- vector是一个可存储任意类型数据的动态数组。
- 分配空间方式:当分配空间不够时,会申请更大的内存空间(增长倍数:2),将原数据拷贝到新的内存块中,释放原内存空间。[连续线性空间]
用法
1. 声明和初始化
int size = 10;
int a = 1;
int arr[5] = {
1,2,3,4,5 };
//vector construction
vector<int> v1;
//vector initialization:five types
vector<int> v1(size); //type 1
vector<int> v1(size, 5); //type 2
vector<int> v2(v1); //type 3
vector<int> v2(v1.begin(), v1.begin() + 4); //type 4
vector<int> v2(arr, arr + 2); //type 5
2. 基本操作
(1)元素添加
v1.push_back(a); // 尾部插入
v1.pop_back(); //尾部删除
v1.insert(v1.begin() + 2, 2);//在v1[1]后面(即v1[2]的位置)插入1个数,值均为2
v1