c++ vector 删除
时间: 2023-08-21 15:16:21 浏览: 99
在C++中,可以使用vector的erase()函数来从vector中删除元素。该函数接受一个迭代器参数,指向要删除的元素。以下是一个示例代码:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
// 创建一个vector
vector<int> myVec = {1, 2, 3, 4, 5};
// 删除第三个元素
myVec.erase(myVec.begin() + 2);
// 打印删除后的vector
for (int i : myVec) {
cout << i << " ";
}
cout << endl;
return 0;
}
```
在这个例子中,我们首先创建了一个包含1到5的vector。然后使用erase()函数删除了第三个元素,即索引为2的元素。最后,我们遍历vector并打印删除后的结果。输出将会是:1 2 4 5。这些方法可以根据具体情况选择使用。
相关问题
c++ vector删除
要在C++中使用vector删除元素,可以使用vector的erase()函数。erase()函数接受一个迭代器参数,指向要删除的元素。具体的操作步骤如下所示:
1. 首先,包含头文件iostream和vector。
2. 创建一个vector,并初始化它的元素。
3. 使用for循环打印出原始的vector中的所有元素。
4. 使用erase()函数删除指定位置的元素,传入要删除元素的迭代器位置。
5. 使用for循环打印删除后的vector中的所有元素。
下面是一个示例代码:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
// 创建一个vector
vector<int> myVec = {1, 2, 3, 4, 5};
// 打印vector中的所有元素
cout << "Original vector: ";
for (int i : myVec) {
cout << i << " ";
}
cout << endl;
// 删除第三个元素
myVec.erase(myVec.begin() + 2);
// 打印删除后的vector
cout << "Modified vector: ";
for (int i : myVec) {
cout << i << " ";
}
cout << endl;
return 0;
}
```
在上述示例代码中,我们首先创建了一个包含5个整数的vector,并初始化它的元素。然后使用for循环打印出原始的vector中的所有元素。接下来,使用erase()函数删除了第三个元素(索引为2)。最后,再次使用for循环打印出删除后的vector中的所有元素。
通过这种方式,我们可以在C++中使用vector的erase()函数来删除指定位置的元素。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [在C++中,如何把vector中的某一项删除](https://blog.csdn.net/Ausma/article/details/129489549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [【C++】vector插入/删除元素](https://blog.csdn.net/xi_shui/article/details/122114607)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
c++vector 删除
要删除 C++ 中的 vector 中的元素,可以使用 erase 函数。erase 函数接受一个迭代器参数,指向要删除的元素,或者指向要删除的第一个元素。例如,删除 vector 中的第二个元素可以这样实现:
```
vector<int> vec = {1, 2, 3, 4, 5};vec.erase(vec.begin() + 1);
```
这里的 `vec.begin() + 1` 就是一个迭代器,指向 vector 中的第二个元素。调用 `erase` 函数后,第二个元素会被删除,vector 中的内容变为 `{1, 3, 4, 5}`。
如果要删除多个元素,可以同时传入两个迭代器,它们分别指向要删除的第一个元素和最后一个元素的下一个位置。例如,删除 vector 中前三个元素可以这样实现:
```
vector<int> vec = {1, 2, 3, 4, 5};
vec.erase(vec.begin(), vec.begin() + 3);
```
这里的 `vec.begin()` 就是一个迭代器,指向 vector 中的第一个元素。调用 `erase` 函数后,前三个元素会被删除,vector 中的内容变为 `{4, 5}`。
阅读全文