English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C++ max_size()La funzione viene utilizzata per ottenere la dimensione massima che può contenere il contenitore della raccolta.
Tipo di membrosize_typeÈ un tipo di intero unsigned.
size_type max_size() const; // prima di C++ 11 size_type max_size() const noexcept; // da C++ 11
Nessuno
Restituisce la lunghezza massima consentita del contenitore della raccolta.
Invariato.
Nessuna variazione.
Il contenitore viene acceduto.
L'accesso simultaneo agli elementi della raccolta è sicuro.
Questa funzione membro non solleva mai eccezioni.
Vediamo un esempio semplice per calcolare la dimensione massima della raccolta:
#include <iostream> #include <set> using namespace std; int main() { set<char, char> s; cout << "La dimensione massima della raccolta " << s.max_size() << "\n"; return 0; }
Output:
La dimensione massima della raccolta "set" è 268435455
Nell'esempio precedente, la funzione max_size() restituisce la dimensione massima della raccolta.
Lasciate che vi mostriamo un esempio semplice:
#include <iostream> #include <set> using namespace std; int main () { int i; set<int> myset; if(myset.max_size() > 1000) { for(i = 0; i < 1000; i++) myset.insert(0); cout << "La serie contiene 1000 elementi.\n"; } else cout << "La serie non può contenere 1000 elementi.\n"; return 0; }
Output:
La serie contiene 1000 elementi.
Nell'esempio sopra, il membro max_size viene utilizzato per controllare preventivamente se la serie può accettare 1000 elementi.
Lasciate che vi mostriamo un esempio semplice, cercare la dimensione massima di un insieme vuoto e di un insieme non vuoto:
#include <set> #include <iostream> using namespace std; int main() { // Inizializzazione del contenitore set<int> mp1, mp2; mp1 = {1111}; // Dimensione massima dell'insieme non vuoto cout << "mp1的最大大小为 " << mp1.max_size(); // Dimensione massima dell'insieme vuoto cout << "\npm2的最大大小为 " << mp2.max_size(); return 0; }
Output:
La dimensione massima di mp1 è 214748364 La dimensione massima di mp2 è 214748364
Nell'esempio sopra, ci sono due insiemi, ovvero mp1 e mp2. mp1 è un insieme non vuoto, mp2 è un insieme vuoto. Ma le dimensioni massime delle due serie sono le stesse.
Lasciate che vi mostriamo un esempio semplice:
#include <iostream> #include <set> #include <string> using namespace std; int main() { typedef set<string> city; string name; city fmly; int n; cout << "输入家庭成员的数量:\"; cin >> n; cout << "输入每个成员的姓名:\n"; for(int i = 0; i < n; i++) { cin >> name; fmly.insert(name); // 将姓名插入集合 } cout << "\n城市总人口数集:\ cout << "\n家庭的总成员是:\ cout << "\n家庭成员姓名: \n"; cout << "\n姓名 \n \t________________________\n"; city::iterator p; for(p = fmly.begin(); p != fmly.end(); p++) { cout << (*p) << " \n "; } return 0; }
Output:
Inserisci il numero di membri della famiglia: 5 Inserisci il nome di ogni membro: Zhang San Zhang Si Li Si Wang Wu Li Ma Zi Popolazione totale della città: 97612893 Il numero totale dei membri della famiglia è: 5 Nome dei membri della famiglia: Nome ________________________ Li Ma Zi Li Si Wang Wu Zhang San Zhang Si
Nell'esempio sopra, il programma crea interattivamente un insieme di città con la dimensione data. Poi, mostra la dimensione totale di un gruppo di città, la dimensione totale di una piccola città e tutti i nomi disponibili e le età nel gruppo.