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 warns 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 you #include any C++ Standard Library header files.

#define _DEFINE_DEPRECATED_HASH_CLASSES 0

When compiling with /Za, the compiler generates an error.

See also

C++ Standard Library Overview