Condividi tramite


Classe vector

La classe vector STL è un modello di classe che archivia elementi di un determinato tipo in una disposizione lineare e consente l'accesso casuale veloce a qualsiasi elemento. La classe vector deve essere il contenitore preferito per una sequenza quando le prestazioni di accesso casuale sono scarse. Quando non si è certi del tipo di contenitore di sequenza da usare, scegliere vector.

template < 
   class Type,  
   class Allocator = allocator<Type>  
> 
class vector

Parametri

  • Tipo
    Tipo dell'elemento da archiviare nel vettore.

  • Allocator
    Tipo dell'oggetto che alloca e dealloca la memoria per il vettore. Questo argomento è facoltativo e il valore predefinito è std::allocator*<Type>.*

Note

I vettori consentono inserimenti ed eliminazioni costanti nel tempo alla fine della sequenza. L'inserimento o l'eliminazione di elementi nel mezzo di un vettore richiede un tempo lineare. Le prestazioni del contenitore Classe deque sono superiori per quanto riguarda gli inserimenti e le eliminazioni all'inizio e alla fine di una sequenza. Il contenitore Classe list è superiore per quanto riguarda gli inserimenti e le eliminazioni in qualsiasi posizione all'interno di una sequenza.

La riallocazione dei vettori si verifica quando una funzione membro deve aumentare il numero di elementi contenuti nel vettore oltre la capacità di archiviazione corrente. Altre operazioni di inserimento e cancellazione possono modificare i vari indirizzi di archiviazione all'interno della sequenza. In questi casi, gli iteratori o i riferimenti che puntano alle parti modificate della sequenza diventeranno non validi. Se non si verifica alcuna riallocazione, restano validi solo gli iteratori e i riferimenti prima del punto di inserimento o eliminazione.

La Classe vector<bool> è una specializzazione completa del vettore del modello di classe per gli elementi di tipo bool con un allocatore per il tipo sottostante usato dalla specializzazione.

La Classe vector<bool> reference è una classe annidata i cui oggetti possono fornire riferimenti agli elementi (singoli bit) all'interno di un oggetto vector<bool>.

Membri

Costruttori

vettore

Costruisce un vettore di dimensioni specifiche, con elementi di un valore specifico, con un oggetto allocator specifico o come copia di un altro vettore.

Definizioni typedef

allocator_type

Tipo dell'oggetto allocator usato dal vettore.

const_iterator

Tipo che rappresenta un iteratore ad accesso casuale di sola lettura.

const_pointer

Tipo che rappresenta un puntatore di sola lettura a un elemento in un vettore.

const_reference

Riferimento a un elemento const archiviato in un vettore per la lettura e l'esecuzione di operazioni const.

const_reverse_iterator

Iteratore inverso di sola lettura.

difference_type

Tipo che rappresenta la differenza tra gli indirizzi di due elementi in un vettore.

iteratore

Tipo che fornisce un iteratore ad accesso casuale che può leggere o modificare qualsiasi elemento in un vettore.

puntatore

Tipo che rappresenta un puntatore a un elemento in un vettore.

riferimenti

Tipo che rappresenta un riferimento a un elemento archiviato in un vettore.

reverse_iterator

Tipo che rappresenta un oggetto reverse_iterator.

size_type

Tipo che rappresenta il numero di elementi in un vettore.

value_type

Tipo che rappresenta il tipo di dati archiviati in un vettore.

Funzioni membro

assign

Sostituisce gli elementi specificati con le copie dei nuovi elementi.

at

Restituisce un riferimento all'elemento in una posizione specificata nel vettore e genera un'eccezione out_of_range se l'indice è minore di zero oppure maggiore o uguale a size().

back

Restituisce un riferimento all'ultimo elemento del vettore.

begin

Restituisce un iteratore ad accesso casuale al primo elemento nel vettore.

capacity

Restituisce il numero di elementi che il vettore può contenere senza allocare più spazio di archiviazione.

cbegin

Restituisce un iteratore const ad accesso casuale al primo elemento nel vettore.

cend

Restituisce un iteratore const ad accesso casuale che punta a un elemento successivo all'ultimo elemento del vettore.

crbegin

Restituisce un oggetto const reverse_iterator che punta all'ultimo elemento in un vettore.

crend

Restituisce un oggetto const reverse_iterator che punta all'elemento che precede il primo elemento nel vettore.

clear

Cancella gli elementi del vettore.

dati

Restituisce un puntatore al primo elemento nel vettore.

emplace

Inserisce un elemento costruito sul posto nel vettore in una posizione specificata.

emplace_back

Aggiunge un elemento costruito sul posto alla fine del vettore.

empty

Verifica se il vettore contiene elementi.

end

Restituisce un iteratore ad accesso casuale che punta a un elemento successivo all'ultimo elemento del vettore.

erase

Rimuove un elemento o un intervallo di elementi di un vettore dalle posizioni specificate.

front

Restituisce un riferimento al primo elemento di un vettore.

get_allocator

Restituisce l'oggetto allocator usato dal vettore.

insert

Inserisce un elemento o un numero di elementi nel vettore in una posizione specificata.

max_size

Restituisce la lunghezza massima del vettore.

pop_back

Elimina l'elemento alla fine del vettore.

push_back

Aggiunge un elemento alla fine del vettore.

rbegin

Restituisce un iteratore al primo elemento in un vettore inverso.

rend

Restituisce un oggetto reverse_iterator che punta all'elemento che precede il primo elemento.

reserve

Riserva una lunghezza di archiviazione minima per un oggetto vettore.

resize

Specifica una nuova dimensione per un vettore.

shrink_to_fit

Elimina la capacità in eccesso.

size

Restituisce il numero di elementi nel vettore.

swap

Scambia gli elementi di due vettori.

Operatori

operator[]

Restituisce un riferimento a un elemento di vettore in corrispondenza di una posizione specificata.

operator =

Sostituisce gli elementi del vettore con una copia di un altro vettore.

Requisiti

Intestazione: <vector>

Spazio dei nomi: std

Vedere anche

Riferimenti

Sicurezza dei thread nella libreria standard C++

Libreria di modelli standard

Altre risorse

membri vettoriale

<vettore> membri