Classe deque
Dispone gli elementi di un determinato tipo in una disposizione lineare e, come un vettore, consente l'accesso casuale rapido a qualsiasi elemento ed efficienti inserimenti ed eliminazioni dietro al contenitore. Tuttavia, a differenza di un vettore, la classe deque supporta anche l'inserimento e l'eliminazione efficiente davanti al contenitore.
template <
class Type,
class Allocator=allocator<Type>
>
class deque
Parametri
Type
Tipo di dati degli elementi da archiviare nel deque.Allocator
Tipo che rappresenta l'oggetto allocatore memorizzato che include i dettagli sull'allocazione e sulla disallocazione del deque e della memoria. Questo argomento è opzionale, e il valore predefinito è allocator<Type>.
Note
La scelta del tipo contenitore deve essere basata in generale sul tipo di ricerca e di inserimento richiesto dall'applicazione. I Vettori dovrebbero essere i contenitori preferiti per gestire una sequenza quando l'accesso casuale a qualsiasi elemento è un extra e gli inserimenti o le eliminazioni di elementi sono richiesti solo alla fine di una sequenza. Le prestazioni del contenitore list sono superiori quando gli inserimenti e le eliminazioni efficienti (in tempo costante) in qualsiasi posizione all'interno della sequenza sono un extra. Tali operazioni al centro della sequenza richiedono copie di elementi e assegnazioni proporzionali al numero di elementi della sequenza (tempo lineare).
La riallocazione di deque si verifica quando una funzione interna deve inserire o eliminare elementi della sequenza:
Se un elemento viene inserito in una sequenza vuota, o se un elemento viene rimosso per lasciare vuota una sequenza, allora gli iteratori restituiti da begin e end diventano non validi.
Se un elemento viene inserito nella prima posizione di deque, allora tutti gli iteratori, ma nessun riferimento, che definisce gli elementi esistenti diventano validi.
Se un elemento viene inserito alla fine di deque, allora end e tutti gli iteratori, ma nessun riferimento, che definisce gli elementi esistenti diventano validi.
Se un elemento viene cancellato all'inizio di deque, solo l'iteratore e i riferimenti all'elemento cancellato diventano non validi.
Se l'ultimo elemento viene rimosso dalla fine del deque, solo l'iteratore nell'elemento finale e i riferimenti all'elemento eliminato diventano non validi.
In caso contrario, l'inserimento o l'eliminazione di un elemento invalida tutti gli iteratori e i riferimenti.
Costruttori
Costruisce un deque.. Molti costruttori sono forniti per installare il contenuto di un nuovo deque in modi diversi: vuoto; caricato con un numero specificato di elementi vuoti; contenuto spostato o copiato da un altro deque; contenuto copiato o spostato mediante un iteratore; e un elemento copiato in deque _Count volte. Alcuni costruttori consentono l'utilizzo di un allocator personalizzato per creare elementi. |
Definizioni typedef
Un tipo che rappresenta la classe allocator per l'oggetto deque. |
|
Un tipo che fornisce un iteratore ad accesso casuale che può avere accesso e leggere elementi in deque come const. |
|
Un tipo che fornisce un puntatore a un elemento in un deque come const. |
|
Un tipo che fornisce un riferimento a un elemento in un deque per leggere e fare altre operazioni come un const. |
|
Un tipo che fornisce un iteratore ad accesso casuale che può avere accesso e leggere elementi in deque come const. Il deque viene visualizzato al contrario. Per ulteriori informazioni, vedere Classe reverse_iterator. |
|
Un tipo che fornisce la differenza tra due iteratori di accesso casuale che fanno riferimento agli elementi all'interno dello stesso deque. |
|
Un tipo che fornisce un iteratore ad accesso casuale che può leggere o modificare qualsiasi elemento in un deque. |
|
Un tipo che fornisce un puntatore a un elemento in un deque. |
|
Un tipo che fornisce un riferimento a un elemento archiviato in un deque. |
|
Un tipo che fornisce un iteratore ad accesso casuale che può leggere o modificare un elemento in un deque. Il deque viene visualizzato in ordine inverso. |
|
Un tipo che conta il numero di elementi in un deque. |
|
Un tipo che rappresenta il tipo di dati archiviati nella deque. |
Funzioni del membro
Elimina gli elementi da un deque e copia una nuova sequenza di elementi al target deque. |
|
Restituisce un riferimento all'elemento in corrispondenza della posizione specificata nella deque. |
|
Restituisce un riferimento all'ultimo elemento della deque. |
|
Restituisce un iteratore ad accesso casuale che punta al primo elemento nella deque. |
|
Restituisce un iteratore const al primo elemento nel deque. |
|
Restituisce iteratore const ad accesso casuale che punta appena oltre la fine della deque. |
|
Cancella tutti gli elementi di un deque. |
|
Restituisce un iteratore const ad accesso casuale al primo elemento in un deque visualizzato in ordine inverso. |
|
Restituisce un iteratore const ad accesso casuale al primo elemento in un deque visualizzato in ordine inverso. |
|
Inserisce un elemento costruito sul posto in deque alla posizione specificata. |
|
Aggiunge un elemento costruito sul posto alla fine della deque. |
|
Aggiunge un elemento costruito sul posto all'inizio della deque. |
|
Restituisce true se la deque contiene zero elementi e false se contiene uno o più elementi. |
|
Restituisce un iteratore ad accesso casuale che punta appena oltre la fine della deque . |
|
Rimuove un elemento o un intervallo di elementi in una deque da specifiche posizioni. |
|
Restituisce un riferimento al primo elemento in una deque. |
|
Restituisce una copia dell'oggetto allocator che viene utilizzato per costruire la deque. |
|
Inserisce un elemento, diversi elementi, o un intervallo di elementi nella deque in una specifica posizione. |
|
Restituisce la lunghezza massima possibile della deque. |
|
Cancella l'elemento alla fine della deque. |
|
Cancella l'elemento all'inizio della deque. |
|
Aggiunge un elemento alla fine della deque. |
|
Aggiunge un elemento all'inizio della deque . |
|
Restituisce un iteratore ad accesso casuale al primo elemento in una deque rovesciata. |
|
Restituisce un iteratore ad accesso casuale che punta appena oltre l'ultimo elemento di una deque rovesciata. |
|
Specifica una nuova dimensione per una deque. |
|
Ignora un eccesso di capacità. |
|
Restituisce il numero di elementi nella deque. |
|
Scambia gli elementi di due deque. |
Operatori
Restituisce un riferimento all'elemento deque a una posizione specificata. |
|
Sostituisce gli elementi della deque con una copia di un'altra deque. |
Requisiti
Header: <deque>
Vedere anche
Riferimenti
Sicurezza dei thread nella libreria standard C++