English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ Méthode d'utilisation et exemple de la fonction map clear()

C++ STL map (conteneur)

C ++ map clear()La fonction est utilisée pour supprimer tous les éléments du conteneur map. Elle nettoie la map et met sa taille à 0.

grammaire

void clear(); // de C++ 11 avant
void clear() noexcept; //de C++ 11 commencer

paramètre

aucun

valeur de retour

aucun

Exemple1

Laissons-nous voir un exemple simple pour calculer la taille de la map avant et après l'opération de nettoyage.

#include <iostream>
#include <map>
using namespace std;
int main() {
   map<char, int> mymap = {
            {'a', 1}
            {'b', 2}
            {'c', 3}
            {'d', 4}
            {'e', 5}
            };
   cout << "La taille initiale de la map avant l'opération clear() = " << mymap.size() << endl;
   mymap.clear();
   cout << "La taille de la map après l'opération clear() = " << mymap.size() << endl;
   return 0;
}

Sortie :

La taille initiale de la map avant l'opération clear() = 5
Après l'opération clear(), la taille de la map = 0

Dans cet exemple, la map utilise5éléments doivent être initialisés. Par conséquent, la taille de la map est5Mais après l'opération de nettoyage, la taille devient 0.

Exemple2

Laissons-nous voir un exemple simple pour effacer les éléments de la map.

#include <iostream>
#include <map>
#include <string>
using namespace std;
int main ()
{
  map<int,string> mymap;
  mymap[1][ = \
  mymap[2][ = \
  mymap[3][ = \
  cout << "mymap contient:\n";
  for (map<int,string>::iterator it=mymap.begin(); it!=mymap.end(); ++it)
    cout << it->first << ": " << it->second << '\n';
  mymap.clear();
  
  mymap[4] = "Rajni";
  mymap[5] = "Sunil";
  cout << "\nmymap contient:\n";
  for (map<int,string>::iterator it=mymap.begin(); it!=mymap.end(); ++it)
    cout << it->first << ": " << it->second << '\n';
  return 0;
}

Sortie :

mymap contient :
1 : Nikita
2 : Deep
3 : Ashish
mymap contient :
4 : Rajni
5 : Sunil

Dans cet exemple, après avoir effacé la map, nous pouvons ajouter de nouveaux éléments sans l'initialiser.

Exemple3

Laissons-nous voir un exemple simple pour effacer les éléments de la map.

#include <iostream>
#include <map>
#include <string>
using namespace std;
int main ()
{
  int n;
  map<int,string> m1,m2,m3;

  m1[1][ = \
  m1[2][ = \
  m1[3][ = \
  
  m2[1][ = \
  m2[2][ = \
  m2[3][ = \
   m3[1][ = \
  m3[2][ = \
  m3[3][ = \
  cout << 
m1Les membres du groupe sont les suivants :
"
  for (map<int,string>::iterator it=m1.begin(); it!=m1.end(); ++it)
  cout << it->first << ": " << it->second << '\n';
  cout << 
m2Les membres du groupe sont les suivants :
"
  for (map<int,string>::iterator it=m2.begin(); it!=m2.end(); ++it)
  cout << it->first << ": " << it->second << '\n';
  cout << 
m3Les membres du groupe sont les suivants :
"
  for (map<int,string>::iterator it=m3.begin(); it!=m3.end(); ++it)
   cout << it->first << ": " << it->second << '\n';
   cout << 
Quel groupe souhaitez-vous supprimer ?
 1.m1
 2.m2
 3.m3
Entrez votre choix svp: ";
  cin >> n;
  if(n==1){
  m1.clear();
  cout << 
m1Le groupe a été effacé.";
  }
  else if(n==2){
  m2.clear();
  cout << 
m2Le groupe a été effacé.";
  }
  else if(n==3){
  m3.clear();
  cout << 
m3Le groupe a été effacé.";
  }
  else
  cout << 
Option invalide !;
  
  return 0;
}

Sortie :

m1Le groupe contient les membres suivants :
1 : Nikita
2 : Deep
3 : Ashish
m2Le groupe contient les membres suivants :
1 : Nidhi
2 : Priya
3 : Gitanjali
m3Le groupe contient les membres suivants :
1 : Rakesh
2 : Fruti
3 : Kamlesh
Quel groupe souhaitez-vous supprimer ?
 1. m1
 2. m2
 3. m3
 Entrez votre choix svp: 2
m2Le groupe a été effacé.

Dans l'exemple ci-dessus, la map est divisée en trois groupes, l'un d'eux a été supprimé selon le choix de l'utilisateur.

Exemple4

Voici un exemple simple :

#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
    int n;
    map<string, int> fruit = {
        { \ 40 	},
        { \ 190 	},
        { \ 120 	},
    };
    cout << 
Le seau de fruits contient les fruits suivants = 

    for (map<string,int>::iterator it = fruit.begin(); it != fruit.end(); ++it){
        cout << it->first << ": " << it->second << '\n';
    }
    cout << 
Vous souhaitez nettoyer votre seau de fruits ?
Tapez1représente oui, tapez 0 pour non: ";
    cin >> n;
    if (n == 1) {
        fruit.clear();
        cout << fruit.size() << " sortes de fruits dans le réservoir \n";
    }
    else if (n == 0) {
        cout << fruit.size() << " sortes de fruits dans le réservoir \n";
    }
    return 0;
}

Sortie :

1.
Le réservoir de fruits contient les fruits suivants =
Pomme : 190
Banane : 40
Orange : 120
Voulez-vous nettoyer votre réservoir de fruits?
Appuyez1Oui, appuyez sur 0 pour non: 1
0 sortes de fruits dans le réservoir
2. 
Le réservoir de fruits contient les fruits suivants =
Pomme : 190
Banane : 40
Orange : 120
Voulez-vous nettoyer votre réservoir de fruits?
Appuyez1Oui, appuyez sur 0 pour non: 0
3 sortes de fruits dans le réservoir

Dans l'exemple ci-dessus, un graphique de fruits est initialisé avec trois fruits. Demander de nettoyer le map, si l'entrée est 0, le réservoir de fruits aura3éléments ; si l'entrée1Si tel est le cas, il effacera le graphique des fruits, la taille deviendra 0.

C++ STL map (conteneur)