Condividi tramite


hash_set::emplace_hint

[!NOTA]

Questo API è obsoleto.L'alternativa consiste unordered_set Class.

Inserire un elemento costruito sul posto in un hash_set.

template<class ValTy>
    iterator emplace(
        const_iterator _Where,
        ValTy&& _Val
);

Parametri

Parametro

Descrizione

_Val

Il valore di un elemento da inserire in hash_set Class a meno che hash_set già contenere più generale tale elemento, o, un elemento il cui la chiave equivalente è ordinata.

_Where

Il posto per avviare ricerca il punto corretto di inserimento.(Inserimento può verificarsi nel tempo costante ammortizzato, anziché tempo logaritmico, se il punto di inserimento immediatamente successivo a _Where).

Valore restituito

La funzione membro hash_set::emplace restituisce un iteratore che indica la posizione in cui il nuovo elemento è stato immesso in hash_set, o in cui l'elemento esistente con l'ordine equivalente si trova.

Note

L'inserimento può verificarsi nel tempo costante ammortizzato, anziché tempo logaritmico, se il punto di inserimento immediatamente successivo a _Where.

In Visual C++ .NET 2003, i membri dei file di intestazione <hash_set> e <hash_map> non sono più nello spazio dei nomi di deviazione standard, ma sono stati spostati nello spazio dei nomi di stdext.Per ulteriori informazioni, vedere lo spazio dei nomi stdext.

Esempio

// hash_set_emplace_hint.cpp
// compile with: /EHsc
#include <hash_set>
#include <iostream>
#include <string>

int main( )
{
   using namespace std;
   using namespace stdext;
   hash_set<string> hs3;
   string str1("a");

   hs3.insert(hs3.begin(), move(str1));
   cout << "After the emplace insertion, hs3 contains "
      << *hs3.begin() << "." << endl;
}
  

Requisiti

intestazione: <hash_set>

Stdext diSpazio dei nomi:

Vedere anche

Riferimenti

hash_set Class

Libreria di modelli standard