基于std :: unordered_(set | map)范围擦除的实际用例是什么?

acc15

发现了这一点std::unordered_set并且std::unordered_map具有基于距离的距离erase(first, last),在我看来,这是另一种射杀自己的好方法。

也许有人知道这种功能的真正用例?

还是这可能被认为是不良设计?

JDłużosz

好的,我有一个答案在C ++ 14中,澄清了未擦除的元素保持相同的顺序“这使得在遍历容器的同时擦除单个元素成为可能。”

因此,您的迭代将以某种随机顺序进行。但是,您可以删除一个呼叫中访问过的所有对象。要删除的范围将与您迭代的范围相同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

std :: unordered_set中的KeyEqual是做什么用的?

来自分类Dev

std :: unordered_set ::擦除复杂度

来自分类Dev

使用基于范围的for std :: set <std :: unique_ptr <T >>删除函数

来自分类Dev

增强多索引容器与基于std :: unordered_map(地图地图)的多级映射容器

来自分类Dev

std :: queue的基于范围的循环

来自分类Dev

std :: queue的基于范围的循环

来自分类Dev

C + + std :: set与基于时间的比较器?

来自分类Dev

为什么std :: chrono :: duration基于秒

来自分类Dev

为什么 std::unordered_set operator==() 的复杂度是 N^2?

来自分类Dev

C ++ std :: set ::用std :: remove_if擦除

来自分类Dev

了解`std :: unordered_set`的用法

来自分类Dev

std :: unordered_set插入获取对象

来自分类Dev

为什么`std :: prev`不会在`std :: unordered_set`的迭代器中引发错误?

来自分类Dev

何时使用std :: unordered_set代替std :: set?

来自分类Dev

何时使用std :: unordered_set代替std :: set?

来自分类Dev

为什么在std :: map上基于范围的for循环中的const std :: pair <K,V>&不起作用?

来自分类Dev

std :: atomic <T>上的volatile操作的用例是什么?

来自分类Dev

std :: unique_lock :: release的用例是什么?

来自分类Dev

std :: ofstream的unordered_map

来自分类Dev

不使用if插入/更新std :: unordered_map元素的最快方法是什么?

来自分类Dev

C ++ std :: unordered_map中使用的默认哈希函数是什么?

来自分类Dev

基于std :: set的无序选择实现最终会重复

来自分类Dev

通过基于键的比较器使用std :: set

来自分类Dev

在基于范围的for循环期间插入到std :: list的后面

来自分类Dev

使用std :: unique_ptr的std :: unordered_set

来自分类Dev

使用pugiXML重命名基于std :: map的节点

来自分类Dev

std :: vector或std :: list for std :: unordered_map存储桶?

来自分类Dev

Python:set.pop()的用例是什么?

来自分类Dev

std :: unordered_map <std :: String,myClass *>-std :: unordered_map :: erase()是否调用myClass的DTor?

Related 相关文章

  1. 1

    std :: unordered_set中的KeyEqual是做什么用的?

  2. 2

    std :: unordered_set ::擦除复杂度

  3. 3

    使用基于范围的for std :: set <std :: unique_ptr <T >>删除函数

  4. 4

    增强多索引容器与基于std :: unordered_map(地图地图)的多级映射容器

  5. 5

    std :: queue的基于范围的循环

  6. 6

    std :: queue的基于范围的循环

  7. 7

    C + + std :: set与基于时间的比较器?

  8. 8

    为什么std :: chrono :: duration基于秒

  9. 9

    为什么 std::unordered_set operator==() 的复杂度是 N^2?

  10. 10

    C ++ std :: set ::用std :: remove_if擦除

  11. 11

    了解`std :: unordered_set`的用法

  12. 12

    std :: unordered_set插入获取对象

  13. 13

    为什么`std :: prev`不会在`std :: unordered_set`的迭代器中引发错误?

  14. 14

    何时使用std :: unordered_set代替std :: set?

  15. 15

    何时使用std :: unordered_set代替std :: set?

  16. 16

    为什么在std :: map上基于范围的for循环中的const std :: pair <K,V>&不起作用?

  17. 17

    std :: atomic <T>上的volatile操作的用例是什么?

  18. 18

    std :: unique_lock :: release的用例是什么?

  19. 19

    std :: ofstream的unordered_map

  20. 20

    不使用if插入/更新std :: unordered_map元素的最快方法是什么?

  21. 21

    C ++ std :: unordered_map中使用的默认哈希函数是什么?

  22. 22

    基于std :: set的无序选择实现最终会重复

  23. 23

    通过基于键的比较器使用std :: set

  24. 24

    在基于范围的for循环期间插入到std :: list的后面

  25. 25

    使用std :: unique_ptr的std :: unordered_set

  26. 26

    使用pugiXML重命名基于std :: map的节点

  27. 27

    std :: vector或std :: list for std :: unordered_map存储桶?

  28. 28

    Python:set.pop()的用例是什么?

  29. 29

    std :: unordered_map <std :: String,myClass *>-std :: unordered_map :: erase()是否调用myClass的DTor?

热门标签

归档