English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C ++ set size()La funzione viene utilizzata per trovare il numero di elementi presenti nel contenitore set.
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
Nessuno
Restituisce il numero di elementi presenti nell'insieme.
Immutabile.
Nessuna variazione.
Il contenitore è accessibile.
L'accesso contemporaneo agli elementi dell'insieme è sicuro.
Questa funzione non solleva mai eccezioni.
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.
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.
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.
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.