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

教程基础C++

Controllo di flusso C++

Funzione C++

Array e stringa C++

Struttura dei dati C++

Classe e oggetto C++

Puntatore C++

Ereditarietà C++

Tutorial STL C++

Manuale di riferimento C++

Utilizzo e esempio di C++ set size()

Set (insieme) STL C++

C ++ set size()La funzione viene utilizzata per trovare il numero di elementi presenti nel contenitore set.

Sintassi

Tipo di membrosize_typeÈ un tipo di intero unsigned.

size_type size() const; // Prima della C++ 11
size_type size() const noexcept; // Dalla C++ 11

Parametro

Nessuno

Valore di ritorno

Restituisce il numero di elementi presenti nell'insieme.

Complesso

Immutabile.

Validità dell'iteratore

Nessuna variazione.

Conflitto di dati

Il contenitore è accessibile.

L'accesso contemporaneo agli elementi dell'insieme è sicuro.

Sicurezza delle eccezioni

Questa funzione non solleva mai eccezioni.

Esempio 1

Vediamo un esempio semplice per calcolare la dimensione della raccolta:

#include <set>
#include <iostream>
using namespace std;
 
int main()
{ 
    set<char> num = {'a', 'b', 'c', 'd'}; 
    cout << "La raccolta num contiene " << num.size() << " elementi.\n";
    return 0;
}

Output:

 La raccolta num contiene 4 elementi.

Nell'esempio sopra, la raccolta num contiene 4 elementi. Pertanto, size() restituisce 4 elementi.

Esempio 2

Vediamo un esempio semplice per calcolare la dimensione iniziale della raccolta e la dimensione della raccolta dopo aver aggiunto gli elementi:

#include <iostream>
#include <set>
using namespace std;
int main(void) {
   set<int> m;
   cout << "La dimensione iniziale della raccolta di set = " << m.size() << endl;
   m = {1, 2, 3, 4, 5, 6};
     cout << "La dimensione della raccolta dopo l'inserimento degli elementi = " << m.size() << endl;
   return 0;
}

Output:

La dimensione iniziale della raccolta di set = 0
La dimensione della raccolta dopo l'inserimento degli elementi = 6

Nell'esempio sopra, la raccolta iniziale è vuota, quindi la funzione size() restituisce 0 e dopo aver inserito 6 elementi restituisce 6.

Esempio 3

Utilizzo della funzione size() nel ciclo while:

#include <iostream>
#include <set>
using namespace std;
int main ()
{
  set<int> myset = {100, 200, 300, 400};
  while (myset.size())
  {
    cout << *myset.begin() << '\n';
    myset.erase(myset.begin());
  }
  return 0;
}

Output:

100
200
300
400

Nell'esempio sopra, la funzione size() è utilizzata solo nel ciclo while per stampare gli elementi della set fino alla dimensione della set.

Esempio 4

Vediamo un esempio per calcolare la dimensione della raccolta basandosi sull'input interattivo dell'utente:

#include <iostream>
#include <set>
#include <string>
using namespace std;
int main() {
  typedef set<int> marksSet;
   
   int number;
   marksSet marks;
   cout << "Inserisci tre gruppi di etichette: \n";
   
   for(int i = 0; i < 3; i++)
   {
       cin >> number; // Inserisci il numero
       marks.insert(number); // Inserisci il numero nella raccolta
   }
   
      cout << "\nLa dimensione della raccolta di numeri è: " << marks.size();
      cout << "\nElenco di numeri di telefono: \n";
      marksSet::iterator p;
      for(p = marks.begin(); p!=marks.end(); p++)
      {
          cout << (*p) << " \n ";
      }
    
   return 0;
}

Output:

Inserisci tre gruppi di segni: 
78 90 84
La dimensione della raccolta di numeri di telefono è: 3
Elenco di numeri di telefono: 
78 
 84 
 90

Nell'esempio sopra, il programma crea prima il segno di impostazione interattiva. Poi, mostra la dimensione totale del set di segni e tutti gli elementi disponibili nel set.

Set (insieme) STL C++