Biblioteca de mapas de C ++ - función insert ()

Descripción

La función C ++ std::multimap::insert()extiende el contenedor insertando un nuevo elemento en multimap usando la semántica de movimiento. Esta función aumenta el tamaño del contenedor en uno.

Declaración

A continuación se muestra la declaración de la función std :: multimap :: insert () del encabezado std :: map.

C ++ 11

template <class P>
iterator insert (const_iterator position, P&& val);

Parámetros

  • position - Sugerencia para la posición para insertar elemento.

  • val - valor a insertar.

Valor devuelto

Devuelve un iterador que apunta al elemento recién insertado.

Excepciones

No hay efecto en el contenedor si se lanza una excepción.

Complejidad del tiempo

Logarítmico, es decir, O (log n)

Ejemplo

El siguiente ejemplo muestra el uso de la función std :: multimap :: insert ().

#include <iostream>
#include <map>

using namespace std;

int main(void) {
   /* Multimap with duplicates */
   multimap<char, int> m {
            {'a', 1},
            {'a', 2},
            {'b', 3},
            {'c', 4},
         };

   auto pos = m.insert(m.begin(), move(pair<char, int>('a', 0)));

   cout << "After inserting new element iterator points to" << endl;
   cout << pos->first << " = " << pos->second << endl;

   return 0;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

After inserting new element iterator points to
a = 0