unordered_set::emplace
Insère un élément construit en place (aucune opération de copie ou de mouvements n'est exécutée).
template<class... Args>
pair<iterator, bool> emplace(
Args&&... args);
Paramètres
Paramètre |
Description |
args |
Les arguments sont transférés pour construire un élément à insérer dans le unordered_set à moins que celui-ci ne contienne déjà un élément dont la valeur est de façon équivalente classée. |
Valeur de retour
Un pair dont le composant bool retourne la valeur true si une insertion a été faite et false si unordered_set contient déjà un élément dont la clé a eu la valeur équivalente dans la commande, et dont le composant itérateur retourne l'adresse où un nouvel élément a été inséré ou lorsque l'élément a déjà été localisé.
Pour accéder au composant itérateur d'une paire pr retournée par cette fonction membre, utilisez pr.first, et pour le déréférencer, utilisez *(pr.first). Pour accéder au composant bool d'une paire pr retournée par cette fonction membre, utilisez pr.second.
Notes
Aucun itérateur ou référence ne sont invalidés par cette fonction.
Pendant l'insertion, si une exception est levée mais pas dans la fonction de hachage du conteneur, le conteneur n'est pas modifié. Si l'exception est levée dans la fonction de hachage, le résultat n'est pas défini.
Pour obtenir un exemple de code, consultez set::emplace.
Configuration requise
Header: <unordered_set>
Espace de noms : std