Bibliothèque de cartes C ++ - fonction emplace_hint ()

La description

La fonction C ++ std::multimap::emplace_hint() insère un nouvel élément dans une multi-carte en utilisant un indice comme position pour l'élément.

Déclaration

Voici la déclaration de la fonction std :: multimap :: emplace_hint () de l'en-tête std :: map.

C ++ 11

template <class... Args>
iterator emplace_hint (const_iterator position, Args&&... args);

Paramètres

  • position - Indice pour la position d'insertion de l'élément.

  • args - Arguments transmis pour construire le nouvel élément.

Valeur de retour

Renvoie un itérateur vers l'élément nouvellement inséré.

Exceptions

Aucun effet sur le conteneur si une exception est levée.

Complexité temporelle

Logarithmique ie O (log n)

Exemple

L'exemple suivant montre l'utilisation de la fonction std :: multimap :: emplace_hint ().

#include <iostream>
#include <map>

using namespace std;

int main(void) {
   multimap<char, int> m {
         {'b', 2},
         {'c', 3},
         {'d', 4},
               };

   m.emplace_hint(m.begin(), 'a', 1);
   m.emplace_hint(m.end(), 'e', 5);

   cout << "Multimap contains following elements" << endl;

   for (auto it = m.begin(); it != m.end(); ++it)
      cout << it->first << " = " << it->second << endl;

   return 0;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

Multimap contains following elements
a = 1
b = 2
c = 3
d = 4
e = 5