hash_map 是 STL 的一部分吗?

2022-01-07 00:00:00 hashmap c++ stl

快速提问……hash_map 是 STL 的一部分吗?

Quick question...Is hash_map part of the STL?

推荐答案

STL 有hash_map,但 C++ 标准库 没有.

由于一个常见的误解,您可能将 C++ 标准库视为STL",或者将 C++ 标准库的工具链实现的一部分视为STL 实现".

Due to a common misconception, you may think of the C++ Standard Library as "the STL", or of parts of your toolchain's implementation of the C++ Standard Library as "an STL implementation".

不是.

MSVC++ 和 GCC(将 hash_map 实现为特定于编译器的扩展),将其放在std 命名空间 中,这不仅具有高度误导性,而且按照标准也是非法的.*叹气*

It is also a great shame that both MSVC++ and GCC (which implement hash_map as a compiler-specific extension), place it in the std namespace, which is not only highly misleading, but also illegal per the standard. *sigh*

C++11 引入了std::unordered_map,没有什么不同.

C++11 has introduced std::unordered_map, which is not dissimilar.

相关文章