stdext Namespace
The latest version of this topic can be found at stdext Namespace.
Members of the <hash_map> and <hash_set> header files are not currently part of the ISO C++ standard. Therefore, these types and members have been moved from the std
namespace to namespace stdext
, to remain conformant with the C++ standard.
When compiling with /Ze, which is the default, the compiler will warn on the use of std
for members of the <hash_map> and <hash_set> header files. To disable the warning, use the warning pragma.
To have the compiler generate an error for the use of std
for members of the <hash_map> and <hash_set> header files with /Ze, add the following directive before #include'ing any Standard C++ Library header files.
#define _DEFINE_DEPRECATED_HASH_CLASSES 0
When compiling with /Za, the compiler will generate an error.