9
std::unordered_set<my_type> my_set;

my_type 在这里必须满足哪些要求?(除了 std::hash 的专门化)

4

1 回答 1

9

您需要对 std::hash 进行专门化,并且需要定义运算符 == 来处理哈希冲突。

编辑:您还应该确保您的类型具有复制构造函数(或让编译器为您生成一个),因为 STL 容器具有值语义。

EDIT2:作为如何执行此操作的示例,您可以查看其他 SO 答案

于 2012-03-29T14:20:29.700 回答