标签: c++ c++14 unordered-map
这会产生编译器错误
unordered_map<pair<int,int>,int> umap;
我知道必须提供散列函数才能使其正常工作。
但是
map<pair<int,int>,int> omap;
完美无需任何哈希函数。
为什么会这样?
答案 0 :(得分:3)
std::map不使用哈希函数。相反,它的&#34;键是使用比较函数排序的...&#34;其中&#34;搜索,删除和插入操作具有对数复杂度。&#34;。查找是通过遍历搜索树而不是通过散列来完成的。