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.

See Also

Reference

Standard C++ Library Overview