Bibliothèque C ++ Unordered_set - emplace

La description

Il insère un nouvel élément dans unordered_set si sa valeur est unique. Ce nouvel élément est construit sur place en utilisant args comme arguments pour le constructeur de l'élément.

Déclaration

Voici la déclaration de std :: unordered_set :: emplace.

C ++ 11

template <class... Args>
pair <iterator,bool> emplace ( Args&&... args );

Paramètres

args - Ces arguments sont passés au constructeur.

Valeur de retour

Elle renvoie si la fonction insère avec succès l'élément (car aucun autre élément n'existait avec la même valeur), la fonction renvoie une paire avec un itérateur à l'élément nouvellement inséré et une valeur de true.

Des exceptions

Une exception est levée si un objet de comparaison d'éléments 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 :: emplace.

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

int main () {
   std::unordered_set<std::string> myset;

   myset.emplace ("kittu");
   myset.emplace ("prasad");
   myset.emplace ("sairamkrishna");

   std::cout << "myset containing:";
   for (const std::string& x: myset) std::cout << " " << x;

   std::cout << std::endl;
   return 0;
}

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

myset containing: sairamkrishna prasad kittu