unordered_set::emplace
Insere um elemento construído no lugar (nenhuma operação de cópia ou movimentação é executada).
template<class... Args>
pair<iterator, bool> emplace(
Args&&... args);
Parâmetros
Parâmetro |
Descrição |
args |
Os argumentos encaminhados para construir um elemento a ser inserido em unordered_set a menos que já contenha um elemento cujo valor está ordenado equivalente. |
Valor de retorno
pair cujo componente de bool retornará true se uma inserção foi feita e um false se unordered_set já contiver um elemento cuja chave têm um valor equivalente na classificação, cujo componente de iterador retornam o endereço onde um novo elemento foi inserido ou onde o elemento já foi encontrado.
Para acessar o componente de iterador de um par pr retornado por esta função de membro, use pr.first, e desreferenciar-lo, use *(pr.first). Para acessar o componente de bool de um par pr retornado por esta função de membro, use pr.second.
Comentários
Nenhuma iterador ou referência são invalidados por essa função.
Durante a inserção, se uma exceção é lançada mas não ocorre na função de hash de contêiner, o contêiner não é alterado. Se a exceção é lançada na função de hash, o resultado será indefinido.
Para um exemplo de código, consulte set::emplace.
Requisitos
unordered_set <deCabeçalho: >
Namespace: std