Compartir a través de


multimap::emplace

inserta un elemento construido en el lugar en un multimap.

template<class ValTy>
   pair<iterator, bool> emplace(
      ValTy&& _Val
);

Parámetros

Parámetro

Descripción

_Val

El valor de un elemento en multimap Class a menos que multimap ya contiene ese elemento o, más general, un elemento cuya clave equivalente se ordena.

Valor devuelto

La función miembro de emplace devuelve un par cuyo componente bool devuelve true si una inserción fue creada y false si la asignación ya contenía un elemento cuya clave tenía un valor equivalente en orden, y cuyo componente de iterador devuelve la dirección donde un nuevo elemento se ha insertado o donde el elemento se ha adaptado ya.

Para tener acceso al componente de iterador de un par pr devuelto por esta función miembro, utilice pr.first, y desreferenciarlo, utilice *(pr.first).Para tener acceso al componente de bool de un par pr devuelto por esta función miembro, utilice pr.second.

Comentarios

multimap::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.

Ejemplo

// multimap_emplace.cpp
// compile with: /EHsc
#include <map>
#include <iostream>
#include <string>

int main( ) {
    using namespace std;
    multimap<int, string> m1;
    pair<int, string> is1(1, "a");

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

Output

After the emplace insertion, m1 contains:
 1 => a

Requisitos

encabezado: <Asignar>

espacio de nombres: std

Vea también

Referencia

multimap Class

Biblioteca de plantillas estándar