list iterator incompatible

来源:互联网 发布:js注入 编辑:程序博客网 时间:2024/06/05 15:28

c++

用list 的erase时

iterator erase (iterator position);
由于删除的时候需要传入的值为iterator,该迭代器用erase()之后就失去了作用。 所以会出现list iterator incompatible的错误。

解决方法可以从表达式中看出,由于erase函数返回了一个迭代器,该迭代器为下一个list元素的地址。所以可以直接声明一个iterator变量去接收这个值就可以啦。

0 0
原创粉丝点击