unordered_set::emplace
Agrega un elemento construido en contexto.
template<class ValTy>
pair<iterator, bool> emplace(ValTy&& val);
Parámetros
Parámetro |
Descripción |
ValTy |
El tipo de contexto del argumento del constructor. |
val |
Valor que se va a insertar. |
Comentarios
La función miembro determina si un elemento X existe en la secuencia cuya clave tiene equivalente que dirige el de val.si no, construye tal elemento X con val.La función continuación determina el iterador where que señala X.Si una inserción se produjo, la función devuelve std::pair(where, true).De lo contrario, devuelve std::pair(where, false).
Si se produce una excepción durante la inserción de un único elemento, el contenedor permanece inalterado y la excepción se reinician.Si se produce una excepción durante la inserción de varios elementos, el contenedor se permite en un estable pero su estado no especificada y la excepción se reinician.
Ejemplo
// std_tr1__unordered_set__unordered_set_emplace.cpp
// compile with: /EHsc
#include <unordered_set>
#include <iostream>
#include <string>
int main()
{
unordered_set< string> c1;
string str1("a");
c1.emplace(move(str1));
cout << "After the emplace insertion, c1 contains: "
<< *c1.begin() << endl;
return (0);
}
Requisitos
encabezado: <unordered_set>
espacio de nombres: std