STL List 删除操作的问题
我用iterator来遍历List,对符合条件的接点删除之。
但是,问题是:当删除掉当前接点时,紧跟之后的那个接点该如何得到。用iterator++吗?
[解决办法]
erase有返回值
另外,去认真看一下《Effective STL》item 9
[解决办法]
我觉得可以,只要改变下参数就可以了,就象对炼表。
[解决办法]
#include <iostream>
#include <list>
using namespace std;
int main()
{
list <int> lst;
for(int i = 0 ;i <10;++i)
{
lst.push_back(i);
}
for(list <int> ::iterator j = lst.begin();j != lst.end();)
{
cout < <*j < <endl;
j = lst.erase(j);
}
return 0;
}
[解决办法]
有人都代码帮你写好了,你也不看。