Bibliothèque C ++ Unordered_set - constructeur

La description

Il est utilisé pour construire un objet conteneur unordered_set.

Déclaration

Voici la déclaration pour std :: unordered_set :: unordered_set.

C ++ 98

explicit unordered_set ( size_type n = /* see below */,
                         const hasher& hf = hasher(),
                         const key_equal& eql = key_equal(),
                         const allocator_type& alloc = allocator_type() );

Paramètres

  • n - Il contient des informations sur le nombre minimum de seaux initiaux.

  • hf - C'est un objet de fonction de hachage.

  • eql - C'est un objet de fonction de comparaison.

  • alloc - C'est un objet allowcator.

  • first, last - Itérateurs d'entrée.

  • ust - C'est un autre objet unordered_set du même type.

  • il - C'est un objet initializer_list.

Valeur de retour

aucun

Exceptions

Une exception est levée si un objet de comparaison d'élément lève une exception.

Veuillez noter que les arguments non valides provoquent un comportement indéfini.

Complexité temporelle

temps constant.

Exemple

L'exemple suivant montre l'utilisation de std :: unordered_set :: unordered_set.

#include <iostream>
#include <string>
#include <unordered_set>

template<class T>
T cmerge (T a, T b) { T t(a); t.insert(b.begin(),b.end()); return t; }

int main () {
   std::unordered_set<std::string> first;                               
   std::unordered_set<std::string> second ( {"100","200","300"} );    
   std::unordered_set<std::string> third ( {"400","500","600"} ); 
   std::unordered_set<std::string> fourth ( second );             
   std::unordered_set<std::string> fifth ( cmerge(third,fourth) ); 
   std::unordered_set<std::string> sixth ( fifth.begin(), fifth.end() ); 

   std::cout << "sixth contains:";
   for (const std::string& x: sixth) std::cout << " " << x;
   std::cout << std::endl;

   return 0;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

sixth contains: 500 400 300 600 100 200