hash_map与map的用法、对外部提供的函数和数据类型是一致的,内部元素也是以pair类型来存储的,但是其底层实现是完全不同的,map底层的数据结构是红黑树,而hash_map是用哈希表来实现的。
我使用#include<hash_map>
头文件时发生如下错误:
<hash_map> is deprecated and will be REMOVED. "
"Please use <unordered_map>. You can define "
"_SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS "
"to acknowledge that you have received this warning."
意思是hash_map头文件已经被弃用了,替换头文件是#include<unordered_map>
,用法和hash_map一样。但是unordered_map内部的元素不以键值或映射的元素作任何特定的顺序排序,其存储位置取决于哈希值。