Question

Je voudrais utiliser unordered_set dans un projet.

Cependant, la documentation est incomplète pour elle soit ou tout simplement une référence technique, aucun exemple.

Quelqu'un peut-il fournir des liens vers des ressources en ligne qui traitent avec elle? Livres accueillent également, de préférence libre. Google à la recherche de valeur renvoyée rien.

Merci!

Était-ce utile?

La solution

Il y a peu de documents sur elle parce qu'elle se comporte exactement comme std::set , avec l'exception qu'il a besoin d'un hachage et égale à la fonction au lieu d'une fonction de comparaison. Il suffit de regarder des exemples pour std::set, et les remplacer par std::unordered_set et vous devriez être très bien.

Si vous devez écrire une fonction de hachage, il y a des exemples dans la documentation, à savoir celui-ci .

Autres conseils

Code pour la plupart des cas d'usage courant:

#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;
}

Sortie

found red
found blue

Plus d'informations

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

Les conteneurs sont effectivement stimuler une implémentation de l'interface première spécifiée par la bibliothèque standard C ++ Rapport technique (connu sous le nom TR1), comme mentionné dans la documentation de boost. Ils semblent faire partie des nouvelles normes de travail projet maintenant. Google se présente un peu plus de documentation / exemples si vous recherchez TR1 et unordered_set. Je aime la référence MSDN, qui a aussi quelques exemples:

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

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

Je voudrais essayer d'utiliser les mêmes méthodes d'accès que vous utilisez sur std::set ou d'autres conteneurs, http://www.boost.org/doc/libs/1_37_0/doc/html/unordered.html semble convenir.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top