3
Come specializzare std :: hash <Key> :: operator () per il tipo definito dall'utente in contenitori non ordinati?
Per supportare i tipi di chiave definiti dall'utente in std::unordered_set<Key>e std::unordered_map<Key, Value> si deve fornire operator==(Key, Key)un hash funtore: struct X { int id; /* ... */ }; bool operator==(X a, X b) { return a.id == b.id; } struct MyHash { size_t operator()(const X& x) const { return std::hash<int>()(x.id); …