クラステンプレートをいじって、unordered_map
クラスのカスタムハッシャーを作成したいと思います。そのドキュメントには、デフォルトのハッシュ関数が組み込み型に提供されていると記載されています。したがって、次のように宣言すると、
std::tr1::unordered_map<std::string, int> foo;
自動的にハッシャーが定義されます。
カスタムハッシュ関数が必要な場合にファンクターを提供する方法については、ここに良い例があります。
std::string
ただし、への挿入/削除のキーとして使用したいメンバーを持つ複雑なクラスがある場合はどうなりunordered_map
ますか?自分のハッシャーを書き直したくない。std::string
そのタイプに対してすでに書かれているものを活用したいと思います。