使用 unordered_set/unordered_multiset 导致迭代器失效

问题描述 投票:0回答:1

我知道,比 unordered_set 会使迭代器无效:

“如果发生重新散列(由于插入),所有迭代器都会失效。”

很清楚,因为我们有带桶的哈希表,但是为什么unordered_multiset不会使迭代器无效?我认为实现unordered_set几乎等于unordered_multiset(带桶的哈希表)

c++ stl hashtable unordered-set unordered-multiset
1个回答
0
投票

您错了,

std::unordered_set
std::unordered_multiset
在这方面存在差异。

正如您在

unordered_multiset::insert
文档中看到的,它包含与
std::unordered_set::insert
完全相同的注释:

如果发生重新哈希(由于插入),所有迭代器都会失效。

© www.soinside.com 2019 - 2024. All rights reserved.