📅  最后修改于: 2023-12-03 15:36:16.919000             🧑  作者: Mango
在C++中,我们通常会使用向量(vector)来存储数据。向量是一种可以动态增长的数组,它可以根据需要自动扩展和收缩。当我们需要从向量中删除一个元素时,可以使用erase函数来擦除它。
vector_name.erase (position);
vector_name.erase (first_position, last_position);
下面是一个实例,演示如何使用erase函数从向量中擦除元素:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> v {1, 2, 3, 4, 5};
// 显示向量的初始值
cout << "Initial vector: ";
for (auto i : v)
cout << i << " ";
cout << endl;
// 擦除第三个元素
v.erase(v.begin() + 2);
// 显示更新后的向量
cout << "Updated vector: ";
for (auto i : v)
cout << i << " ";
cout << endl;
return 0;
}
输出结果为:
Initial vector: 1 2 3 4 5
Updated vector: 1 2 4 5
在上面的例子中,我们使用v.erase(v.begin() + 2)来删除向量的第三个元素。begin()函数返回向量的起始位置迭代器,我们通过加上2将迭代器指向第三个元素,然后将其作为参数传递给erase函数。删除后,我们使用for循环遍历向量并显示其更新后的值。
如果需要从向量中擦除元素,可以使用erase函数。该函数接受一个位置参数或者两个位置参数,表示要删除的元素的范围。如果只需要删除单个元素,可以将该元素的位置传递给函数。