Libreria C ++ - <forward_list>
introduzione
forward_list è un contenitore di sequenze comunemente usato. Il contenitore è un oggetto che contiene dati dello stesso tipo. Il contenitore forward_list è implementato come lista collegata singolarmente, quindi fornisce un accesso sequenziale unidirezionale ai suoi dati.
forward_list non fornisce un accesso casuale veloce, supporta solo l'accesso sequenziale in una sola direzione. forward_list consente operazioni di inserimento ed eliminazione ovunque all'interno di una sequenza a tempo costante.
Gli elementi di forward_list possono essere sparsi in diversi blocchi di memoria. Il contenitore memorizza le informazioni necessarie per consentire l'accesso sequenziale ai suoi dati. forward_lists può ridursi o espandersi secondo necessità da entrambe le estremità in fase di esecuzione. Il requisito di archiviazione viene soddisfatto automaticamente dall'allocatore interno.
Sono valide anche le forward_list di dimensione zero. In questo caso forward_list.begin () e forward_list.end () punta alla stessa posizione. Ma il comportamento della chiamata a front () non è definito.
Definizione
Di seguito è riportata la definizione di std :: forward_list dal file di intestazione <forward_list>
template < class T, class Alloc = allocator<T> > class forward_list;
Parametri
T - Tipo di elemento contenuto.
T può essere sostituito da qualsiasi altro tipo di dati incluso il tipo definito dall'utente.
Alloc - Tipo di oggetto allocatore.
Per impostazione predefinita, viene utilizzato il modello di classe dell'allocatore, che definisce il modello di allocazione della memoria più semplice ed è indipendente dal valore.
Tipi di membri
I seguenti tipi di membro possono essere usati come parametri o tipo restituito dalle funzioni membro.
Sr.No. | Tipi di membri | Definizione |
---|---|---|
1 | value_type | T (Primo parametro del modello) |
2 | allocator_type | Alloc (Secondo parametro del modello) |
3 | riferimento | value_type & |
4 | const_reference | const value_type & |
5 | puntatore | value_type * |
6 | const_pointer | const value_type * |
7 | iteratore | un iteratore ad accesso casuale per value_type |
8 | const_iterator | un iteratore ad accesso casuale per const value_type |
9 | size_type | size_t |
10 | differenza_tipo | ptrdiff_t |
Funzioni da <forward_list>
Di seguito è riportato un elenco di tutti i metodi dall'intestazione <forward_list>.
Costruttori
Sr.No. | Metodo e descrizione |
---|---|
1 | forward_list :: forward_list costruttore predefinito
Costruisce un forward_list vuoto con zero elementi. |
2 | forward_list :: forward_list costruttore di riempimento
Costruisce un nuovo forward_list con n elementi e assegna val a ogni elemento di forward_list. |
3 | forward_list :: forward_list costruttore di riempimento
Costruisce un nuovo forward_list con n elementi e assegna un valore zero a ciascun elemento di forward_list. |
4 | forward_list :: costruttore di intervalli forward_list
Costruisce un forward_list con maggior numero di elementi nella gamma di prima per ultimo . |
5 | forward_list :: forward_list copia costruttore
Costruisce una forward_list con copia di ogni elemento presente nella lista esistente. |
6 | forward_list :: forward_list muovi costruttore
Costruisce un forward_list con il contenuto di other usando la semantica di spostamento. |
7 | forward_list :: forward_list costruttore dell'elenco di inizializzatori Costruisce un forward_list dall'elenco di inizializzazione. |
Distruttore
Sr.No. | Metodo e descrizione |
---|---|
1 | forward_list :: ~ forward_list
Distrugge l'oggetto forward_list deallocando la sua memoria. |
Funzioni dei membri
Sr.No. | Metodo e descrizione |
---|---|
1 | forward_list :: assegna la versione dell'intervallo
Assegna un nuovo valore a forward_list sostituendo quelli vecchi. |
2 | forward_list :: assegna la versione di riempimento
Assegna nuovi valori a forward_list sostituendo quelli vecchi. |
3 | forward_list :: assegna la versione dell'elenco di inizializzatori
Assegna nuovi valori a forward_list sostituendo quelli vecchi. |
4 | forward_list :: before_begin
Restituisce un iteratore ad accesso casuale che punta alla posizione prima del primo elemento di forward_list. |
5 | forward_list :: inizio
Restituisce un iteratore ad accesso casuale che punta al primo elemento di forward_list. |
6 | forward_list :: cbefore_begin
Restituisce un iteratore ad accesso casuale costante che punta alla posizione prima del primo elemento di forward_list. |
7 | forward_list :: cbegin
Restituisce un iteratore ad accesso casuale costante che punta all'inizio di forward_list. |
8 | forward_list :: cend
Restituisce un iteratore ad accesso casuale costante che punta alla fine di forward_list. |
9 | forward_list :: clear
Distrugge forward_list rimuovendo tutti gli elementi da forward_list e imposta la dimensione di forward_list su zero. |
10 | forward_list :: emplace_after
Costruisce e inserisce un nuovo elemento dopo la posizione in forward_list e aumenta la dimensione di forward_list di uno. |
11 | forward_list :: emplace_front
Inserisce un nuovo elemento all'inizio di forward_list e aumenta la dimensione di forward_list di uno. |
12 | forward_list :: vuoto
Verifica se forward_list è vuoto o meno. |
13 | forward_list :: end
Restituisce un iteratore ad accesso casuale che punta all'ultimo elemento di forward_list. |
14 | forward_list :: erase_after position version
Rimuove un singolo elemento dopo la posizione da forward_list. |
15 | forward_list :: cancella la versione dell'intervallo
Rimuove l'intervallo di elementi da forward_list. |
16 | forward_list :: front
Restituisce un riferimento al primo elemento di forward_list. |
17 | forward_list :: get_allocator
Restituisce un allocatore associato a forward_list |
18 | forward_list :: insert_after versione a elemento singolo
Estende l'iteratore inserendo un nuovo elemento dopo la posizione in forward_list |
19 | forward_list :: insert_after sposta la versione
Estende l'iteratore inserendo un nuovo elemento dopo la posizione in forward_list |
20 | forward_list :: insert_after fill version
Estende l'iteratore inserendo un nuovo elemento dopo la posizione in forward_list |
21 | forward_list :: insert_after range version
Estende l'iteratore inserendo un nuovo elemento dopo la posizione in forward_list |
22 | forward_list :: insert_after versione dell'elenco di inizializzatori
Estende l'iteratore inserendo un nuovo elemento dopo la posizione in forward_list |
23 | forward_list :: max_size
Restituisce il numero massimo di elementi che può essere trattenuto da forward_list. |
24 | forward_list :: merge
Unisce due forward_lists ordinate in una sola. |
25 | forward_list :: merge move version
Unisce due forward_lists ordinate in una sola. |
26 | forward_list :: merge compare la funzione
Unisce due forward_lists ordinate in una sola. |
27 | forward_list :: merge confronta la funzione di spostamento della versione
Unisce due forward_lists ordinate in una utilizzando la semantica di spostamento. |
28 | forward_list :: operator = copia versione Assegna nuovi contenuti a forward_list sostituendo quelli vecchi. |
29 | forward_list :: operator = sposta versione
Assegna nuovi contenuti a forward_list sostituendo quelli vecchi. |
30 | forward_list :: operator = versione dell'elenco di inizializzatori
Assegna nuovi contenuti a forward_list sostituendo quelli vecchi. |
31 | forward_list :: pop_front
Rimuove il primo elemento da forward_list. |
32 | forward_list :: push_front copia versione
Inserisce un nuovo elemento all'inizio di forward_list. |
33 | forward_list :: push_front spostare la versione
Inserisce un nuovo elemento all'inizio di forward_list. |
34 | forward_list :: rimuovi
rimuove gli elementi da forward_list che corrispondono al valore. |
35 | forward_list :: remove_if
rimuove gli elementi da forward_list che soddisfano la condizione. |
36 | forward_list :: ridimensiona
Modifica la dimensione di forward_list. |
37 | forward_list :: ridimensiona la versione del valore
Modifica la dimensione di forward_list. |
38 | forward_list :: reverse
Inverte l'ordine degli elementi presenti in forward_list. |
39 | forward_list :: sort
Ordina gli elementi di forward_list. |
40 | forward_list :: sort compare la funzione
Ordina gli elementi di forward_list. |
41 | forward_list :: splice_after
Trasferisce tutti gli elementi da forward_list a * this. |
42 | forward_list :: splice_after sposta versione
Trasferisce tutti gli elementi da forward_list x a * this utilizzando la semantica di spostamento. |
43 | forward_list :: splice_after singolo elemento
Trasferisce un elemento puntato dall'iteratore i da forward_list x a * this . |
44 | forward_list :: splice_after versione di spostamento di un singolo elemento
Trasferisce l'elemento puntato dall'iteratore i da forward_list x a * this usando la semantica di spostamento. |
45 | forward_list :: splice_after range version
Trasferimenti gli elementi nell'intervallo primo a durare da x a * questo . |
46 | forward_list :: splice range e sposta versione
Trasferimenti gli elementi nell'intervallo primo a durare da x a * questo utilizzando semantica movimento. |
47 | forward_list :: swap
Scambia il contenuto di un forward_list con il contenuto di un altro forward_list x . |
48 | forward_list :: unico
Rimuove tutti gli elementi duplicati consecutivi da forward_list. |
49 | forward_list :: unico
Rimuove tutti gli elementi duplicati consecutivi da forward_list. |
Funzioni di sovraccarico non membro
Sr.No. | Metodo e descrizione |
---|---|
1 | operatore ==
Verifica se due forward_lists sono uguali o meno. |
2 | operatore! =
Verifica se due forward_lists sono uguali o meno. |
3 | operatore <
Verifica se first forward_list è minore di other o meno. |
4 | operatore <=
Verifica se il primo forward_list è minore o uguale ad altri oppure no. |
5 | operatore>
Verifica se il primo forward_list è maggiore di altri o meno. |
6 | operatore> =
Verifica se il primo forward_list è maggiore o uguale ad altri oppure no. |
7 | scambiare
Scambia il contenuto di due forward_list. |