C ++容器的迭代器

时间:2011-01-22 10:05:30

标签: c++ stl iterator

这个问题可能听起来很蹩脚,但我还没有找到明确的答案。我可以假设,map的{​​{1}}方法返回的迭代器将指向相同的数据,即使我将其他元素添加(或删除)到同一find()?我不清楚map的迭代器是否指向map中的位置或特定数据......

1 个答案:

答案 0 :(得分:10)

您可以在inserterase操作后继续使用相同的迭代器。标准说(C ++ 03标准,第23.1.2节,第8段):

  

插入成员不应影响迭代器的有效性和对容器的引用以及擦除   成员只能使迭代器和对已擦除元素的引用无效。

所有关联容器都是如此(mapsetmultimapmultiset)。