如何在迭代时从地图中删除? - How to remove from a map while iterating it?

10/14 10:25
阅读数 0

问题:

How do I remove from a map while iterating it?迭代时如何从地图中删除? like:喜欢:

std::map<K, V> map;
for(auto i : map)
    if(needs_removing(i))
        // remove it from the map

If I use map.erase it will invalidate the iterators如果我使用map.erase它会使迭代器失效


解决方案:

参考一: https://en.stackoom.com/question/YYF1
参考二: https://stackoom.com/question/YYF1
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部