C++容器的迭代器失效规则是什么?
优选地以摘要列表格式.
(注意:这是Stack Overflow的C++常见问题解答的一个条目.如果你想批评在这种形式下提供常见问题解答的想法,那么发布所有这些的元数据的发布将是这样做的地方.这个问题在C++聊天室中受到监控,其中FAQ的想法一开始就出现了,所以你的答案很可能被那些提出想法的人阅读.)
我有一个向量V,我想存储此向量的哪些元素,我稍后将删除.
为此,我使用了另一个向量Y来存储我想要删除的V元素的迭代器.所以我迭代Y来访问我需要在V中删除的元素的迭代器.
问题是当你从V中擦除元素时,Y中的所有迭代器(指向V的元素)都变得无效.
我找不到任何答案,但它似乎是微不足道的,必须有一个简单的解决方法,不是吗?