タグ付けされた質問 「unordered-set」

3
順序付けされていないコンテナでユーザー定義型のstd :: hash <Key> :: operator()を特化する方法は?
で、ユーザー定義のキータイプをサポートするために、std::unordered_set&lt;Key&gt;そしてstd::unordered_map&lt;Key, Value&gt; 一つが提供しなければならないoperator==(Key, Key)とハッシュファンクタ: struct X { int id; /* ... */ }; bool operator==(X a, X b) { return a.id == b.id; } struct MyHash { size_t operator()(const X&amp; x) const { return std::hash&lt;int&gt;()(x.id); } }; std::unordered_set&lt;X, MyHash&gt; s; コンパイラとライブラリに付属する型の場合のように、typeのデフォルトのハッシュだけstd::unordered_set&lt;X&gt; で記述する方が便利ですX。相談後 C ++標準ドラフトN3242§20.8.12 [unord.hash]および§17.6.3.4[hash.requirements]、 Boost.Unordered g ++ include\c++\4.7.0\bits\functional_hash.h VC10 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.