Espacios de nombres
Variantes
Acciones

std::unordered_set<Key,Hash,KeyEqual,Allocator>::emplace_hint

De cppreference.com
 
 
 
 
template <class... Args>
iterator emplace_hint( const_iterator hint, Args&&... args );
(desde C++11)

Inserta (emplaza) un nuevo elemento en el contenedor, utilizando hint como una sugerencia de dónde debería ir el elemento. El elemento se construye en el sitio, es decir, no se realizan operaciones de copia o movimiento.

El constructor del elemento se llama con exactamente los mismos argumentos que se suministraron a la función, reenviados con std::forward<Args>(args)....

Si ocurre una redispersión (rehashing) debido a la inserción, se invalidan todos los iteradores. De lo contrario, no se afectan los iteradores. Las referencias no se invalidan. La dispersión vuelve a ocurrir solo si el nuevo número de elementos es mayor que max_load_factor()*bucket_count().

Contenido

[editar] Parámetros

hint - El iterador usado como sugerencia de dónde insertar el nuevo elemento.
args - Los argumentos a reenviar al constructor del elemento.

[editar] Valor de retorno

Devuelve un iterador al elemento recién insertado.

Si la inserción falló porque el elemento ya existe, devuelve un iterador al elemento ya existente con la clave equivalente.

[editar] Excepciones

Si alguna operación lanza una excepción, esta función no tiene ningún efecto (garantía de excepción fuerte).

[editar] Complejidad

Constante amortizada en promedio; lineal en el tamaño del contenedor en el peor de los casos.

[editar] Ejemplo

[editar] Véase también

(C++11)
Construye el elemento en el sitio.
(función miembro pública) [editar]
(C++11)
Inserta elementos o nodos (desde C++17)
(función miembro pública) [editar]