Compartilhar via


hash_set::emplace

ObservaçãoObservação

este API é obsoleto.Uma alternativa é unordered_set Class.

Insere um elemento construída no lugar de um hash_set.

template<class ValTy>
    pair <iterator, bool> emplace(
        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.

Valor de retorno

A função de membro de emplace retorna um par cujo componente de bool retorna true se ele faz uma inserção e false se hash_set já continha um elemento cuja chave tem um valor equivalente em ordem, e cujos o componente de iterador retorna o endereço onde um novo elemento foi inseridos ou onde o elemento já foi encontrado.

Comentários

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.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.emplace(move(str1));
   cout << "After the emplace insertion, hs3 contains "
      << *hs3.begin() << "." << endl;
}
  

Requisitos

Cabeçalho: <hash_set>

stdext denamespace:

Consulte também

Referência

hash_set Class

Standard Template Library