C++中vector容器可以删除/添加制定位置处的元素,分别使用erase()与insert()函数。其中函数内需要两个参数,第一个为指定删除/添加的位置,第二个元素为删除/添加的元素值。
iterator insert(const_iterator _Where, _Ty&& _Val)
iterator erase(const_iterator _Where)2、代码示例
元素删除
#include#include using namespace std; void main() { vector vec{ 1, 2, 3, 4, 5, 6, 7 }; cout << "处理前结果" << endl; for (int i = 0; i < vec.size(); i++) { cout << vec[i] << "t"; } cout << endl; vec.erase(vec.begin() + 1);//删除第2个元素 即删除vec[1] cout << "第一次处理后的结果" << endl; for (int i = 0; i < vec.size(); i++) { cout << vec[i] << "t"; } cout << endl; vec.erase(vec.begin() + 1);//删除第2个元素 即删除vec[1] cout << "第二次处理后的结果" << endl; for (int i = 0; i < vec.size(); i++) { cout << vec[i] << "t"; } system("pause"); }
运行结果:
元素添加
#include#include using namespace std; void main() { vector vec{ 1, 2, 3, 4, 5, 6, 7 }; cout << "处理前结果" << endl; for (int i = 0; i < vec.size(); i++) { cout << vec[i] << "t"; } cout << endl; vec.insert(vec.begin() + 1, 2);//在第2位置添加元素2 cout << "第一次处理后的结果" << endl; for (int i = 0; i < vec.size(); i++) { cout << vec[i] << "t"; } cout << endl; vec.insert(vec.begin() + 3, 3);//在第3位置添加元素2 cout << "第二次处理后的结果" << endl; for (int i = 0; i < vec.size(); i++) { cout << vec[i] << "t"; } system("pause"); }
运行结果:
暑期编程PK赛 得CSDN机械键盘等精美礼品!


