Share via


hash_map::emplace_hint

[!NOTA]

Esta API está obsoleta.La alternativa es unordered_map Class.

Inserta un elemento construido en el lugar en un hash_map, con una sugerencia de posición.

template<class ValTy>
    iterator emplace_hint(
        const_iterator _Where,
        ValTy&& _Val
);

Parámetros

Parámetro

Descripción

_Val

El valor utilizado para mover la construcción un elemento en hash_map Class a menos que hash_map ya contiene ese elemento (o, más general, un elemento cuya clave equivalente está ordenada).

_Where

Una sugerencia con respecto al lugar para iniciar buscar el punto correcto de la inserción.

Valor devuelto

La función miembro hash_multimap::emplace devuelve un iterador que señale a la posición donde el nuevo elemento se ha insertado en hash_map, o donde el elemento existente por orden de equivalente se encuentra.

Comentarios

hash_map::value_type de un elemento es par, de modo que el valor de un elemento es un par petición con el primer componente igual al valor de clave y el segundo componente igual al valor de los datos de elemento.

Inserción puede aparecer en tiempo constante amortizado, en lugar de tiempo logarítmico, si el punto de inserción inmediatamente sigue _Where.

A partir de Visual C++ .NET 2003, los miembros de los archivos de encabezado <hash_map> y <hash_set> ya no están en el espacio de nombres std, pero se han movido bastante al espacio de nombres stdext.Vea El espacio de nombres stdext para obtener más información.

Ejemplo

// hash_map_emplace_hint.cpp
// compile with: /EHsc
#include<hash_map>
#include<iostream>
#include <string>

int main()
{
    using namespace std;
    using namespace stdext;
    hash_map<int, string> hm1;
    typedef pair<int, string> is1(1, "a");

    hm1.emplace(hm1.begin(), move(is1));
    cout << "After the emplace, hm1 contains:" << endl
      << " " << hm1.begin()->first
      << " => " << hm1.begin()->second
      << endl;
}
  

Requisitos

Encabezado: <hash_map>

Stdext deEspacio de nombres:

Vea también

Referencia

hash_map Class

Biblioteca de plantillas estándar