vector删除操作
时间: 2024-04-05 18:28:19 浏览: 57
在C++中,vector是一个动态数组,可以方便地进行元素的插入、删除和访问操作。下面是关于vector删除操作的介绍:
1. 使用erase函数:vector提供了erase函数来删除指定位置的元素。该函数接受一个迭代器参数,指定要删除的元素位置。例如,要删除vector中的第三个元素,可以使用以下代码:
```
vector<int> vec = {1, 2, 3, 4, 5};
vec.erase(vec.begin() + 2);
```
这将删除vec中的第三个元素(值为3)。
2. 使用erase-remove惯用法:如果要删除vector中满足某个条件的元素,可以结合使用erase和remove算法。remove算法将满足条件的元素移到vector的末尾,并返回一个指向新的逻辑结尾的迭代器。然后,使用erase函数删除这些元素。例如,要删除vector中所有值为3的元素,可以使用以下代码:
```
vector<int> vec = {1, 2, 3, 4, 5};
vec.erase(remove(vec.begin(), vec.end(), 3), vec.end());
```
这将删除vec中所有值为3的元素。
3. 使用pop_back函数:pop_back函数用于删除vector的最后一个元素。例如,要删除vector中的最后一个元素,可以使用以下代码:
```
vector<int> vec = {1, 2, 3, 4, 5};
vec.pop_back();
```
这将删除vec中的最后一个元素(值为5)。
阅读全文