gpt4 book ai didi

c++ - 如何找到STL hash_map的表大小和内存消耗?

转载 作者:行者123 更新时间:2023-11-30 03:11:47 25 4
gpt4 key购买 nike

我想知道STL hash_map是怎么实现的。我如何找出表的大小和 map 消耗的内存空间?这是在 C++ 中。

最佳答案

没有“STL hash_map”这样的东西。 TR1 中有一个 unordered_map,但我假设您没有使用它,否则您会说 unordered_map。

正如有人指出的那样,unordered_map 有“bucket_count”来确定桶的数量。您可以遍历每个存储桶,获取其大小(“bucket_size(size_t bucket_num)”),将其乘以一对键和值的大小,然后将它们相加得到一个粗略估计 使用的内存。可能存在实现定义的非可移植方式。它显然是为您使用的任何 hash_map 类定义的实现。

关于c++ - 如何找到STL hash_map的表大小和内存消耗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1971707/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com