10

unordered_setプロジェクトで使用したいのですが。

ただし、そのドキュメントは不完全であるか、単なる技術的なリファレンスであり、例はありません。

誰かがそれを扱うオンラインリソースへのリンクを提供できますか?本も歓迎します、できれば無料です。グーグル検索は何の価値も返しませんでした。

ありがとう!

4

4 に答える 4

10

最も一般的なユースケースのコード:

#include <boost/unordered_set.hpp>
using boost::unordered_set;
using std::string;
using std::cout;
using std::endl;

int main (void)
{   
    // Initialize set
    unordered_set<string> s;
    s.insert("red");
    s.insert("green");
    s.insert("blue");

    // Search for membership
    if(s.find("red") != s.end())
        cout << "found red" << endl;
    if(s.find("purple") != s.end())
        cout << "found purple" << endl;
    if(s.find("blue") != s.end())
        cout << "found blue" << endl;

    return 0;
}

出力

found red
found blue

詳しくは

http://www.cplusplus.com/reference/unordered_set/unordered_set/find/

于 2012-12-21T22:07:47.263 に答える
7

std::set比較関数の代わりにハッシュ関数とequals関数が必要なことを除いて、とまったく同じように動作するため、ドキュメントはほとんどありません。の例を検索しstd::set、それらをに置き換えるだけでstd::unordered_set問題ありません。

ハッシュ関数を作成する必要がある場合は、ドキュメントに例があります。つまり、これです。

于 2010-12-12T17:32:51.517 に答える
4

ブーストコンテナは、ブーストドキュメントに記載されているように、事実上、C ++標準ライブラリテクニカルレポート(TR1として知られている)によって最初に指定されたインターフェイスの実装です。それらは、今では新しい標準作業ドラフトの一部のようです。tr1とunordered_setを検索すると、Googleはさらにいくつかのドキュメント/例を表示します。いくつかのサンプルもあるMSDNリファレンスが好きです。

http://msdn.microsoft.com/en-us/library/bb982739.aspx

http://www.google.de/search?q=tr1+unordered_set

于 2010-12-12T17:47:00.377 に答える
2

std::set他のコンテナで使用しているのと同じアクセス方法を使用してみます。http: //www.boost.org/doc/libs/1_37_0/doc/html/unordered.htmlは同意しているようです。

于 2010-12-12T17:32:43.113 に答える