Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我需要通过保存 set.find() 返回的迭代器来跟踪 std::set 元素。
我的问题是插入和删除其他元素是否会使获得的迭代器无效?从我做的一个简单测试中我可以看出它不是,但我想确保这个功能是设计使然。
它永远不会使迭代器或对元素的指针/引用无效。只有当您删除元素本身时,迭代器或指针/引用才会变得无效。
23.1.2/8:
23.1.2/8
插入成员不应影响迭代器和对容器的引用的有效性,而擦除成员应仅使迭代器和对被擦除元素的引用无效。