在 C++ 中,可以使用迭代器(iterator)来遍历 vector 并删除元素。具体的步骤如下:
下面是一个示例代码:
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
for (auto it = vec.begin(); it != vec.end();) {
if (*it % 2 == 0) {
it = vec.erase(it);
} else {
++it;
}
}
for (int num : vec) {
std::cout << num << " ";
}
return 0;
}
输出结果为:1 3 5
在上述示例中,通过使用迭代器遍历 vector,并使用 erase() 函数删除满足条件的偶数元素。注意,在删除元素后,迭代器会自动指向下一个元素,因此不需要在循环中进行额外的迭代器自增操作。