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

Manuale di base di C++

Controllo di flusso C++

Funzioni in C++

Array e stringhe C++

Strutture dati C++

Classi e oggetti C++

Puntatori in C++

Ereditarietà in C++

Manuale di C++ STL

Manuale di riferimento C++

Utilizzo e esempio della funzione C++ map clear()

Map (contenitore) STL in C++

C++ map clear()La funzione viene utilizzata per rimuovere tutti gli elementi del contenitore map. Elimina il map e imposta la sua dimensione a 0.

sintassi

void clear(); // prima di C++ 11
void clear() noexcept; // da C++ 11

parametro

nessuno

valore di ritorno

nessuno

Esempio 1

Ecco un esempio semplice per calcolare la dimensione del map prima e dopo l'operazione di clear.

#include 
#include 
using namespace std;
int main() {
   map<char, int> mymap = {
            {'a', 1},
            {'b', 2},
            {'c', 3},
            {'d', 4},
            {'e', 5},
            };
   cout << "dimensione iniziale del map prima dell'operazione di clear = " << mymap.size() << endl;
   mymap.clear();
   cout << "dimensione del map dopo l'operazione di clear = " << mymap.size() << endl;
   return 0;
}

Output:

La dimensione iniziale della mappa prima dell'operazione di clear = 5
La dimensione della mappa dopo l'operazione di clear = 0

Nell'esempio sopra, la mappa è inizializzata con 5 elementi. Pertanto, la dimensione della mappa è 5, ma dopo l'operazione di pulizia, la dimensione diventa 0.

Esempio 2

Ecco un esempio semplice per vedere come rimuovere elementi da una mappa.

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

Output:

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

Nell'esempio sopra, dopo aver pulito la mappa, possiamo aggiungere nuovi elementi senza inizializzarla.

Esempio 3

Ecco un esempio semplice per vedere come rimuovere elementi da una mappa.

#include 
#include 
#include 
using namespace std;
int main ()
{
  int n;
  map<int, string> m1, m2, m3;
  m1[1] = "Nikita";
  m1[2] = "Deep";
  m1[3] = "Ashish";
  
  m2[1] = "Nidhi";
  m2[2] = "Priya";
  m2[3] = "Gitanjali";
   m3[1] = "Rakesh";
  m3[2] = "Fruti";
  m3[3] = "Kamlesh";
  cout << "m1 gruppo contiene i seguenti membri:\n"
  per (auto it = m1.begin(); it != m1.end(); ++it)
  cout << it->first << " : " << it->second << '\n';
  cout << "m2 gruppo contiene i seguenti membri:\n"
  per (auto it = m2.begin(); it != m2.end(); ++it)
  cout << it->first << " : " << it->second << '\n';
  cout << "m3 gruppo contiene i seguenti membri:\n"
  per (auto it = m3.begin(); it != m3.end(); ++it)
   cout << it->first << " : " << it->second << '\n';
   cout<<"\n您要删除哪个组?\n 1.m1\n 2.m2\n 3.m3\n 请输入您的选择: ";
  cin>>n;
  if(n==1){
  m1.clear();
  cout<<"\nm1组已被清除。";
  }
  else if(n==2){
  m2.clear();
  cout<<"\nm2组已被清除。";
  }
  else if(n==3){
  m3.clear();
  cout<<"\nm3组已被清除。";
  }
  else
  cout<<"Invalid option!";
  
  return 0;
}

Output:

m1组有以下成员:
1 : Nikita
2 : Deep
3 : Ashish
m2组有以下成员:
1 : Nidhi
2 : Priya
3 : Gitanjali
m3组有以下成员:
1 : Rakesh
2 : Fruti
3 : Kamlesh
您要删除哪个组?
 1. m1
 2. m2
 3. m3
 请输入您的选择: 2
m2组已被清除。

在上面的示例中,map分为三组,根据用户的选择,一组已被删除。

实例4

让我们看一个简单的实例:

#include 
#include 
#include 
using namespace std;
int main() {
    int n;
    map fruit = {
        { "Banana", 40 },
        { "Apple", 190 },
        { "Orange", 120 },
    };
    cout << "水果桶有以下水果 = \n";
    for (map::iterator it = fruit.begin(); it != fruit.end(); ++it){
        cout << it->first << " : " << it->second << '\n';
    }
    cout << "\n你要清理你的水果桶吗?\n按1表示是,按0表示否: ";
    cin >> n;
    if (n == 1) {
        fruit.clear();
        cout << fruit.size() << " 种水果在桶里 \n";
    }
    else if (n == 0) {
        cout << fruit.size() << " 种水果在桶里 \n";
    }
    return 0;
}

Output:

1.
La scatola di frutta ha i seguenti frutti: =
Apple: 190
Banana: 40
Orange: 120
Vuoi pulire la tua scatola di frutta?
Premi 1 per sì, premi 0 per no: 1
0 tipi di frutta nella scatola
2. 
La scatola di frutta ha i seguenti frutti: =
Apple: 190
Banana: 40
Orange: 120
Vuoi pulire la tua scatola di frutta?
Premi 1 per sì, premi 0 per no: 0
3 tipi di frutta nella scatola

Nell'esempio sopra, una mappa di frutta è inizializzata con tre frutti. Richiede di pulire la mappa, se si inserisce 0, la scatola di frutta avrà 3 elementi; se si inserisce 1, la mappa di frutta sarà pulita e la dimensione diventerà 0.

Map (contenitore) STL in C++