c vector 删除指定元素
时间: 2023-12-23 18:05:05 浏览: 38
你可以使用 `std::vector` 的 `erase` 函数来删除指定元素。`erase` 函数接受一个迭代器参数,用于指定要删除的元素位置。以下是一个示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 删除元素 3
for (auto it = vec.begin(); it != vec.end(); ++it) {
if (*it == 3) {
vec.erase(it);
break;
}
}
// 打印剩余的元素
for (const auto& elem : vec) {
std::cout << elem << " ";
}
std::cout << std::endl;
return 0;
}
```
在上面的代码中,我们使用了一个迭代器 `it` 遍历 `vec`,并找到要删除的元素位置。然后调用 `erase` 函数删除了该元素。注意要在删除元素后使用 `break` 结束循环,否则会导致迭代器失效。
输出结果为:`1 2 4 5`,其中元素 3 已被删除。