boost::unordered_map 缺少像 std::unordered_map 一样的 Reserve()

2023-12-06

对于我的下一个任务,我需要使用一个非常大的哈希;因为我有一个旧的编译器,所以我不能使用 C++0xstd::unordered_map。理想情况下,我需要打电话给reserve提前为大量物品腾出空间。我找不到这个方法boost::unordered_map: 有没有什么地方或功能可以达到同样的效果?

2个关联容器相同;我可以看到rehash函数和用于控制存储桶数量的相同构造函数,但不是关于多个元素的函数。

你能帮我吗?


reserve可以通过以下方式模拟rehash如 N3376 中的表 103 所示。

a.rehash(n) 
Post: a.bucket_count() > a.size() / a.max_load_factor() 
      and a.bucket_count() >= n.

a.reserve(n) Same as a.rehash(ceil(n / a.max_load_factor()))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

boost::unordered_map 缺少像 std::unordered_map 一样的 Reserve() 的相关文章

随机推荐