18.2.4 vector插入和删除
push_back(ele); | 尾部插入元素ele |
pop_back(); | 删除最后一个元素 |
insert(const_itterator pos, ele); | 在迭代器指向的位置插入元素ele |
insert(const_itterator pos, int count, ele); | 在迭代器指向的位置插入count个元素ele |
erase(const_itterator pos); | 删除迭代器指向位置的元素 |
erase(const_itterator start, const_itterator end); | 删除从start到end之间的元素 |
clear(); | 删除容器中的所有元素 |
下面的代码演示了这些成员函数,比较容易理解。
#include <iostream>
#include<vector>
using namespace std;
template<class T>
void printVector(vector<T> &v)
{
for(vector<T>::iterator it = v.begin(); it != v.end(); it++)
{
cout << *it << '\t';
}
cout << endl;
}
void test1()
{
vector<int>v1;
v1.push_back(10);
v1.push_back(20);
v1.push_back(30);
v1.push_back(40);
v1.push_back(50);
printVector<int>(v1);
v1.pop_back();
printVector<int>(v1);
//插入
v1.insert(v1.begin() + 1, 100);
printVector<int>(v1);
v1.insert(v1.begin(), 2, 1000);
printVector<int>(v1);
//删除
v1.erase(v1.begin() + 3);
printVector<int>(v1);
//清空
//v1.erase(v1.begin(), v1.end());
v1.clear();
printVector<int>(v1);
}
int main()
{
test1();
}