Il vettore è una classe nella libreria vettoriale inclusa nel programma. Dalla stessa classe vettoriale, possono essere istanziati diversi oggetti vettoriali. La dichiarazione di oggetti vettoriali senza allocazione della memoria per gli elementi è l'istanza. La dichiarazione di oggetti vettoriali con allocazione della memoria per gli elementi è ancora istanziata.
Idealmente, l'inizializzazione viene eseguita durante l'istanza. Tuttavia, quando la dichiarazione viene eseguita senza l'allocazione della memoria per gli elementi, è necessario eseguire l'inizializzazione assegnando o spingendo_back (in), valori iniziali.
Queste informazioni forniscono due situazioni per l'inizializzazione: inizializzazione con la creazione vettoriale come definizione o inizializzazione dopo la dichiarazione senza definizione per assegnazione (o spingendo_back in).
La creazione di vettoriali può essere classificata in due categorie: creazione vettoriale con elementi e creazione vettoriale senza elementi. L'obiettivo di questo articolo deve essere interpretato come: come creare un vettore con tutti gli elementi iniziali zero. Per avere un vettore con tutti gli elementi zero, il tipo di elementi deve essere int o galleggiare o le loro varianti. Utilizzeremo il tipo Int in questo articolo.
Inizializzazione alla creazione vettoriale con elementi
Creazione con inizializer_list
Initializer_List è un elenco di valori dello stesso tipo separati dalle virgole e delimitati da Braces. Esistono due sintassi per la creazione di un vettore con inizializer_list. Le sintassi sono:
Vector & Operator = (Initializer_ListPer creare un vettore con tutti i zero, tutti i valori in inizialezer_list dovrebbero essere semplicemente zeri. Il seguente programma illustra questo utilizzando la prima sintassi in cui l'Initializer_List è assegnato all'oggetto vettoriale con l'operatore di assegnazione:
#includereL'output è:
0 0 0 0 0Nell'intestazione del programma, la libreria vettoriale è stata inclusa. La dichiarazione vettoriale si trova nella prima dichiarazione nella funzione principale. Il contenuto vettoriale viene visualizzato nel resto del codice nella funzione principale.
Per la seconda sintassi, il secondo parametro è facoltativo e non sarà incluso nel seguente programma. Per questa seconda sintassi, inizializer_list è l'argomento della funzione del costruttore vettoriale. Il seguente programma illustra l'uso della seconda sintassi:
#includereL'output è:
0 0 0 0 0L'ingresso era di cinque zeri e l'output è gli stessi cinque zeri.
Numero di elementi vettoriali noti in anticipo
Il numero di elementi vettoriali può essere noto in anticipo, ma gli elementi effettivi potrebbero non essere conosciuti in anticipo. In questo caso, il vettore dovrebbe essere ancora inizializzato su zeri. La sintassi della creazione vettoriale per questo è:
vector (size_type n, const t & value, const allocatore & = allocator ())Il terzo parametro è facoltativo e non farà parte del seguente programma. Il primo argomento è il numero di elementi e il secondo argomento è il valore predefinito, che in questo caso è zero per tutti gli elementi. Il seguente programma mostra come utilizzare questa sintassi per una dimensione vettoriale di 5:
#includereL'output è:
0, 0, 0, 0, 0Inizializzazione dopo creazione vettoriale senza elementi
Qui, viene creato un vettore vuoto prima dell'inizializzazione. La sintassi per creare un vettore vuoto è:
vector () noExcept (noExcept (allocator ()): vector (allocator ())La sintassi per assegnare i valori iniziali a un vettore con inizializer_list, è:
void Assemment (inizializer_listIl seguente programma crea un vettore vuoto e quindi assegna zeri agli elementi:
#includereL'output è:
0 0 0 0 0La prima affermazione nella funzione principale crea il vettore vuoto. La seconda istruzione è l'inizializzazione utilizzando la funzione membro Assegna (). L'argomento della funzione membro ASSEGNA () è inizializer_list con ciascun elemento in zero.
La sintassi per assegnare i valori predefiniti a un vettore, quando il numero di elementi è noto in anticipo, è:
void Assem (size_type n, const t & u);Con questa sintassi, il primo argomento è il numero di elementi nel vettore e il secondo argomento è il valore predefinito. Per l'inizializzazione con gli zeri, basta creare il valore predefinito zero. Ricorda che questo deve essere fatto quando è stato creato un vettore vuoto. Il seguente programma illustra questo:
#includereL'output è:
0 0 0 0 0Spingendo indietro
Dopo che è stato creato un vettore vuoto, qualsiasi numero di zeri può essere spinto_backing nel vettore per l'inizializzazione come illustrato nel seguente programma:
#includereL'output è:
0 0 0 0 0Vettore dei valori di tipo predefinito e inizializzazione
Se il numero di elementi è noto in anticipo, allora senza indicare i valori, i valori predefiniti del tipo saranno i valori iniziali. Il valore predefinito per il tipo int è zero. La sintassi per la creazione di tale vettore è:
Vector esplicito (size_type n, const allocator & = allocator ())Il secondo argomento è facoltativo e può essere omesso. Il primo argomento è la dimensione del vettore. Se il tipo di vettore è int, i valori iniziali saranno tutti zeri. Il seguente programma illustra questo:
#includereL'output è:
0 0 0 0 0Conclusione
La dimensione del vettore in tutti i campioni di codice sopra è 5. Qualsiasi altro numero può essere utilizzato. Un vettore può essere inizializzato con tutti gli zeri in tre modi principali: a) Utilizzare inizializer_list, b) Utilizzare la funzione membro vettoriale ASSEGNA () a un vettore vuoto (o push_back ()) o c) utilizzare int o float come modello Specializzazione dei parametri per un vettore di valori inizialmente solo predefiniti.