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

La description

La fonction C ++ std::map::erase()supprime un seul élément de la carte de la position .

Cette fonction membre réduit la taille de la carte de un.

Déclaration

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

C ++ 11

iterator erase (const_iterator position);

Paramètres

position - Itérateur de l'élément à supprimer.

Valeur de retour

Renvoie un itérateur après le dernier élément supprimé.

Exceptions

Cette fonction membre ne lève pas d'exception.

Complexité temporelle

Logarithmique ie log (n).

Exemple

L'exemple suivant montre l'utilisation de la fonction std :: map :: erase ().

#include <iostream>
#include <map>

using namespace std;

int main(void) {
   /* Initializer_list constructor */
   map<char, int> m = {
            {'a', 1},
            {'b', 2},
            {'c', 3},
            {'d', 4},
            {'e', 5},
            };

   cout << "Map contains following elements before erase operation" << endl;

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

   auto it = m.erase(m.begin());

   cout << "Map contains following elements after erase operation" << endl;

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

   cout << "After erase operation iterator points to = " << it->first << endl;

   return 0;
}

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

Map contains following elements before erase operation
a = 1
b = 2
c = 3
d = 4
e = 5
Map contains following elements after erase operation
b = 2
c = 3
d = 4
e = 5
After erase operation iterator points to = b