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

Tutorial di base di C++

Controllo di flusso C++

Funzioni in C++

Array e stringhe C++

Strutture dati C++

Classi e oggetti C++

Puntatore in C++

Ereditarietà in C++

Tutorial STL di C++

Manuale di riferimento C++

Utilizzo e esempio della funzione empty() di C++ map

Map STL in C++

C++ map empty()La funzione viene utilizzata per verificare se il contenitore della mappa è vuoto. Se il contenitore della mappa è vuoto (dimensione 0), restituisce true, altrimenti restituisce false.

Sintassi

bool empty() const; // prima di C++ 11
bool empty const noexcept; // da C++ 11

Parametro

Nessuno

Valore di ritorno

Se il contenitore della mappa è vuoto (dimensione 0), restituisce true, altrimenti restituisce false.

Esempio 1

Ecco un esempio semplice per verificare se la mappa contiene qualsiasi elemento.

#include <map>
#include <iostream>
using namespace std;
int main()
{
    map<int, int> numbers;
    cout << "All'inizio, numbers.empty(): " << numbers.empty() << "\n";
    numbers[1] = 100;
    numbers[2] = 200;
    numbers[3] = 300;
    cout << "\nDopo aver aggiunto elementi, number.empty(): " << numbers.empty() << "\n";
}

Output:

All'inizio, numbers.empty(): 1
Dopo aver aggiunto elementi, number.empty(): 0

Nel esempio precedente, la dimensione iniziale della mappa è 0, quindi la funzione empty() restituisce 1 (true), e dopo aver aggiunto elementi, restituisce 0 (false).

Esempio 2

Ecco un esempio semplice per verificare se la mappa è vuota.

#include <iostream>
#include <map>
using namespace std;
int main(void) {
   map<char, int> m;
   if (m.empty()) {}
      cout << "Map è vuoto." << endl;
      }
   m['n'] = 100;
   if (!m.empty()){
      cout << "La mappa non è vuota. " << endl;
      }
   return 0;
}

Output:

La mappa è vuota.
La mappa non è vuota.

Nell'esempio sopra, utilizzare ifSe la mappa è vuota, aggiungere un elemento restituirà la mappa come vuota. Restituirà la mappa non vuota.

Esempio 3

Lasciate che vediamo un esempio semplice.

#include <iostream>
#include <map>
using namespace std;
int main ()
{
  map<char, int> mymap;
  mymap['x'] = 100;
  mymap['y'] = 200;
  mymap['z'] = 300;
  while (!mymap.empty())
  {
    cout << mymap.begin()->first << " => " << mymap.begin()->second << '\n';
    mymap.erase(mymap.begin());
  }
  return 0;
}

Output:

x => 100
y => 200
z => 300

Nell'esempio sopra, viene utilizzata la funzione empty() nel ciclo while e viene stampato l'elemento della mappa fino a quando la mappa non è vuota.

Esempio 4

Lasciate che vediamo un esempio semplice.

#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
  typedef map<string, int> phoneMap;
   
   string name;
   int number;
   phoneMap phone;
   
   if (phone.empty()){
      cout << "La mappa è vuota. Inserisci contenuti \n " << endl;
   }
   cout << "Inserisci tre gruppi di nome e numero: \n";
   
   for(int i = 0; i<3; i++)
   {
       cin >> name; // Ottenere la chiave
       cin >> number; // Ottenere il valore
       phone[name] = number; // Inserire il valore nella mappa
   }
   if (!phone.empty())
   {
      cout << "\nElenco dei numeri di telefono: \n";
      phoneMap::iterator p;
      for(p = phone.begin(); p!=phone.end(); p++)
      {
          cout << (*p).first << " " << (*p).second << " \n ";
      }
   }
   
   return 0;
}

Output:

La map è vuota. Inserisci del contenuto! 
 
Inserisci tre gruppi di nomi e numeri: 
Nikita 555555
Nidhi  111111
Deep  333333
Elenco di numeri di telefono: 
Deep 333333 
Nidhi 111111 
Nikita 555555

Nel seguente esempio, il programma crea interattivamente tre map con tre nomi. Poi, verifica se la map è vuota. Se la map è vuota, visualizza un messaggio, altrimenti visualizza tutti i nomi disponibili nella map e i loro numeri di telefono.

Map STL in C++