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: