2016-10-17 10 views
2

を使用してハッシュ関数を組み合わせて、私は最近、ブログの著者は組み合わせのハッシュを::彼らのSTDにそれらを減らしビットセット表現とビットセットを連結して見つけることによって、2つのハッシュを組み合わせhttps://worldengineer.me/2015/02/08/combining-container-hashes-with-c14-metaprogramming-cure-for-insomnia-1729/は、C++のstd ::ビットセット

に出くわしましたビットセット。

多分、この記事の動機はC++ 14の機能を導入することであったと私は考えていました。このアプローチが、純粋に衝突耐性に基づいたブーストhash_combine機能とどれほど優れているのでしょうか?

EDIT:良いことで

私はどのようにブーストライブラリのhash_combine方法に比べて衝突を回避して運賃とはどういう意味?私は上記のアプローチがhash_combineメソッドよりもはるかに時間がかかるとは思わないが、パフォーマンスは良い選択肢です。

私はこれで深刻な開発をしていません。ちょうど周囲を突き進むので、アプローチのメリットを知りたいと思っていました。

+0

「良い」という定義は何ですか?そうでなければ、これはかなり広い質問です。 – AndyG

+0

@AndyGいいことに、私は衝突抵抗を意味します、遠く離れた値 –

答えて

2

私は

  • 周りハックし、それが楽しいです新しいものを発見する(STDとそれを自分で行う::ビットセット)を、
  • が、本格的な開発にはその意志ブーストのような使用してライブラリを好むことを言うだろうあなたの開発を促進し、エラーを避ける。さらに、このライブラリはオープンソースであり、数百人の専門家によって開発され、読まれています。