Partager via


unordered_map::emplace

Insère un élément construit en place (aucune opération de copie ou de mouvements n'est exécutée) dans un mappage non-ordonné.

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 mappage non-ordonné à 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_map 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 map::emplace.

Configuration requise

En-tête : <unordered_map>

Espace de noms : std

Voir aussi

Référence

<unordered_map>

unordered_map, classe

Bibliothèque STL (Standard Template Library)