hash_set::emplace_hint
Observação |
---|
este API é obsoleto.Uma alternativa é unordered_set Class. |
Insere um elemento construída no lugar de um hash_set.
template<class ValTy>
iterator emplace(
const_iterator _Where,
ValTy&& _Val
);
Parâmetros
Parâmetro |
Descrição |
_Val |
O valor de um elemento a ser inserido em hash_set Class a menos que hash_set já contém esse elemento ou, mais geralmente, um elemento cuja chave é ordenada equivalente. |
_Where |
O local para iniciar a pesquisa pelo ponto correto de inserção.(Inserção pode ocorrer em tempo amortizados constantes, em vez de tempo logarítmicas se, o ponto de inserção imediatamente seguinte _Where.) |
Valor de retorno
A função de membro de hash_set::emplace retorna um iterador que aponta para a posição onde o novo elemento ser inserido em hash_set, ou onde o elemento existente com a ordem de equivalente está localizado.
Comentários
Inserção pode ocorrer em tempo amortizados constantes, em vez de tempo logarítmicas se, o ponto de inserção imediatamente seguinte _Where.
Em o Visual C++ .NET 2003, os membros dos arquivos de cabeçalho de <hash_map> e de <hash_set> não estão mais no namespace de STD, mas tenham sido portados em vez de stdext no namespace.Consulte O namespace de stdext para mais informações.
Exemplo
// 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;
}
Requisitos
Cabeçalho: <hash_set>
stdext denamespace: