vector怎么删除指定位置元素
时间: 2024-05-19 09:15:00 浏览: 11
你可以使用 erase() 函数来删除 vector 容器中指定位置的元素。例如,如果要删除第三个元素,可以使用 vec.erase(vec.begin()+2)。其中 vec.begin() 返回指向 vector 的第一个元素的迭代器,我们使用 +2 将其移动到第三个元素的位置,然后使用 erase() 函数删除该元素。
相关问题
vector删除指定位置元素
要删除 vector 中指定位置的元素,可以使用 `erase` 函数。以下是一个示例:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
int index = 2; // 要删除的元素的索引
if (index >= 0 && index < vec.size()) {
vec.erase(vec.begin() + index);
} else {
std::cout << "索引超出范围!" << std::endl;
}
// 打印删除元素后的 vector
for (int num : vec) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
在上述示例中,我们创建了一个 `std::vector`,然后指定要删除的元素的索引为 `2`。通过检查索引是否在有效范围内,我们使用 `erase` 函数删除指定位置的元素。最后,我们遍历打印删除元素后的 vector。
输出结果为:`1 2 4 5`,可以看到元素 `3` 已成功被删除。
vector 删除指定位置元素
在 C++ 中,可以使用 vector 的 erase 方法来删除指定位置的元素。erase 方法有两种重载形式,一种是删除单个元素,另一种是删除一个区间内的元素。
删除单个元素的语法如下:
```cpp
vector_name.erase(vector_name.begin() + index);
```
其中,vector_name 是待删除元素的 vector 容器名,index 是待删除元素的下标。
删除一个区间内的元素的语法如下:
```cpp
vector_name.erase(vector_name.begin() + start, vector_name.begin() + end);
```
其中,vector_name 是待删除元素的 vector 容器名,start 和 end 分别是待删除元素区间的起始下标和终止下标,区间包括起始下标对应的元素,但不包括终止下标对应的元素。
下面是一个示例代码:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> vec{1, 2, 3, 4, 5};
// 删除下标为2的元素
vec.erase(vec.begin() + 2);
// 删除下标为1到3的元素
vec.erase(vec.begin() + 1, vec.begin() + 4);
// 输出剩余元素
for (int i : vec) {
cout << i << " ";
}
cout << endl;
return 0;
}
```
输出结果为:
```
1
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)