vector的大小可以动态变化,且可以根据需求存储多种类型的数据。
定义vector
vector<数据类型> 容器名;
数据类型可以是基础类型、结构体、类的实例。
vector<int> v;
定义vector数组
vector<数据类型> 容器名[数组大小];
int n = 100;
vector<int> v[n];
常用的vector方法
返回容器大小
size()
返回指向首元素的迭代器
begin()
返回指向尾元素的迭代器
end()
返回首元素
front()
返回尾元素
back()
在末尾添加一个元素
push_back()
在末尾添加一个元素
emplace_back()
// 当想要在vector中添加一个新元素而不是一个已经构造完成的元素时,emplace_back()效率更高
在容器中插入另一段容器
// 参数均为迭代器
insert(插入位置,另一段容器的插入起始位置,另一段容器的插入介素位置)
删除容器指定位置或指定区间的元素
// 参数均为迭代器
erase(删除起始位置,删除结束位置)
清空容器
clear()
判空
empty()
弹出最后一个元素
pop_back()
遍历vector的方法
下标遍历(最简单)
for(int i=0;i<v.size();i++){
cout<<v[i]<<" ";
}
迭代器
代码省略
foreach
代码省略
部分方法示例代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
cout<<v.size()<<endl; // 返回容器大小
cout<<v.front()<<endl; // 返回容器的首元素
cout<<v.back()<<endl; //返回容器的尾元素
v.insert(v.end(), v.begin(), v.end()); // 插入另一段容器insert(插入位置, 另一段容器)
// 遍历容器
for(int i=0;i<v.size();i++){
cout<<v[i]<<" ";
}
return 0;
}