Biblioteca C ++ Unordered_set - emplace
Descrição
Ele insere um novo elemento no unordered_set se seu valor for único. Este novo elemento é construído no local usando args como argumentos para o construtor do elemento.
Declaração
A seguir está a declaração para std :: unordered_set :: emplace.
C ++ 11
template <class... Args>
pair <iterator,bool> emplace ( Args&&... args );
Parâmetros
args - Esses argumentos são passados para o construtor.
Valor de retorno
Ele retorna se a função inserir com sucesso o elemento (porque nenhum outro elemento existia com o mesmo valor), a função retorna um par com um iterador para o elemento recém-inserido e um valor true.
Exceções
A exceção é lançada se qualquer objeto de comparação de elemento lançar uma exceção.
Observe que os argumentos inválidos causam um comportamento indefinido.
Complexidade de tempo
tempo constante.
Exemplo
O exemplo a seguir mostra o uso de std :: unordered_set :: emplace.
#include <iostream>
#include <string>
#include <unordered_set>
int main () {
std::unordered_set<std::string> myset;
myset.emplace ("kittu");
myset.emplace ("prasad");
myset.emplace ("sairamkrishna");
std::cout << "myset containing:";
for (const std::string& x: myset) std::cout << " " << x;
std::cout << std::endl;
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
myset containing: sairamkrishna prasad kittu