我有一个std::unordered_map<std::string, int> map;
然后在其中插入大量元素,但字符串键都是唯一的。
以下情况是否可能以及如何处理?
map[x] = 5;
map[y] = 3;
让我们假设x
和y
是不同的字符串,但它们产生相同的哈希,所以 5 和 3 放在同一个桶中。
当我们尝试检索值时map[x]
,地图如何返回正确的值 5?散列x
会给桶中的两个元素 5、3 但我看不出它是如何在没有密钥本身进行比较的情况下获得正确的值的。
我错过了什么?