Condividi tramite


unordered_set::emplace

Inserisce un elemento costruito in locale (non viene effettuata alcuna operazione di copia o di spostamento).

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

Parametri

Parametro

Descrizione

args

Gli argomenti inoltrati per costruire un elemento da inserire nella unordered_set a meno che questo non contenga già un elemento il cui valore sia equivalentemente ordinato.

Valore restituito

Un pair il cui componente bool restituisce true se un inserimento è stato eseguito e false se la unordered_set contiene già un elemento la cui la chiave ha un valore equivalente nell'ordine e di cui il componente iteratore restituisce l'indirizzo dove un nuovo elemento è stato inserito o dove l'elemento si trovava già.

Per accedere al componente iteratore di una coppia pr restituito da questa funzione, utilizzare pr.first, e per dereferenziarla, utilizzare *(pr.first). Per accedere al componente bool di una coppia pr restituito dalla funzione membro, utilizzare pr.second.

Note

Nessun iteratore o puntatore, viene invalidato da questa funzione.

Durante l'inserimento, se viene generata un'eccezione ma non si trova nella funzione hash del contenitore, il contenitore non viene modificato. Se viene generata un'eccezione nella funzione hash, il risultato sarà indefinito.

Per un esempio di codice, vedere set::emplace.

Requisiti

Intestazione: <unordered_set>

Spazio dei nomi: std

Vedere anche

Riferimenti

<unordered_set>

Classe unordered_set

Libreria di modelli standard