我最近发现 C++ 中哈希映射的实现将被称为unordered_map
.
当我查找他们为什么不只是 usinghash_map
时,我发现显然存在与解决方案的实现的兼容性问题hash_map
(unordered_map
更多关于它在这里)。
该 wiki 页面没有提供更多信息,所以我想知道是否有人知道hash_map
该unordered_map
解决的一些问题。
我最近发现 C++ 中哈希映射的实现将被称为unordered_map
.
当我查找他们为什么不只是 usinghash_map
时,我发现显然存在与解决方案的实现的兼容性问题hash_map
(unordered_map
更多关于它在这里)。
该 wiki 页面没有提供更多信息,所以我想知道是否有人知道hash_map
该unordered_map
解决的一些问题。
由于 C++ 标准库中没有定义哈希表,标准库的不同实现者会提供一个非标准哈希表,通常命名为hash_map
. 因为这些实现不是按照标准编写的,所以它们在功能和性能保证上都有细微的差别。
从C++11开始,哈希表实现已添加到 C++ 标准库标准中。决定为该类使用一个替代名称,以防止与这些非标准实现发生冲突,并防止hash_table
其代码中的开发人员无意中使用新类。
选择的替代名称unordered_map
确实更具描述性,因为它暗示了类的映射接口及其元素的无序性质。