在C++中,删除列表中的元素可以使用STL中的erase()函数。erase()函数接受一个迭代器作为参数,用于指定要删除的元素的位置。以下是一个简单的示例:
#include <iostream>
#include <list>
int main() {
std::list<int> numbers = {1, 2, 3, 4, 5};
// 删除第三个元素
std::list<int>::iterator it = numbers.begin();
std::advance(it, 2); // 移动迭代器到第三个元素的位置
numbers.erase(it);
// 打印剩余的元素
for (int num : numbers) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
在上面的示例中,我们使用advance()函数将迭代器移动到要删除的元素的位置,然后调用erase()函数删除该元素。最后,我们使用循环打印剩余的元素。