STL中vector的常见用法
程序员文章站
2022-03-22 21:37:04
...
1、vector的定义
vector <typename> name ;
例如:
vector <int> vi ;
vector <node> vi ; //node是结构体类型
vector < vector <int> > vi ; //二维vector数组,>>之间要加空格以防被当作右移操作
2、迭代器iterator
vector <typename> :: iterator it ; //相当于类型为typename的指针
例如:
vector <int> :: iterator it = vi.begin() ;
*(it + i) // 等价于vi[i],只有vector和string可以用*(it + i)来访问
3、常用函数
- 末尾插入 //push_back(a)
- 末尾删除 //pop_back()
- 元素个数 //size()
- 清空元素 //clear()
- 插入元素 //insert(iterator,a)
- 删除单个或一个区间的元素 //erase(iterator) or erase(iterator1,iterator2)
#include<cstdio>
#include<vector>
using namespace std;
int main(){
vector<int> vi; //定义vi
for(int i = 0;i < 10;i++){
vi.push_back(i); //函数1、末尾插入
}
vi.insert(vi.begin() + 2,-1); //函数5、插入;迭代器访问
printf("%d\n",vi.size()); //函数3、元素个数
vi.erase(vi.begin() + 3,vi.begin() + 8); //函数6、删除一个区间的元素
vi.pop_back(); //函数2、末尾删除
for(int i = 0;i < vi.size();i++){ //函数3、元素个数
printf("%d",*(vi.begin() + i)); //等价于vi[i]
}
vi.clear(); //函数4、清空
return 0;
}
上一篇: STL 中vector用法
下一篇: STL 中类vector的成员函数