2

我主要是问这个问题,因为我不确定如何计算两者之间的大小差异,因为我存储指向基于 std::string 存储的类对象的指针作为键。我知道额外的空间主要是因为 boost::unordered_map 中的内部维护(听说维护了一个长数组,我不知道为什么,有人可以解释一下为什么还要维护)。我在想 std::map 不需要管家(如果我错了,请纠正我)。

我的想法是 std::map 存储为二叉树或红黑树, boost::unordered_map 将您的键转换为十进制数字并基于此进行散列。

请澄清我对两者的理解。

TIA-R

4

0 回答 0