Libreria C ++ - <stack>
introduzione
Stack è una struttura dati progettata per funzionare nel contesto LIFO (Last in First out). Nello stack gli elementi vengono inseriti e rimossi da una sola estremità.
La classe stack è l'adattatore del contenitore. Il contenitore è un oggetto che contiene dati dello stesso tipo. La pila può essere creata da diversi contenitori di sequenze. Se il container non viene fornito, utilizza il deque container predefinito . Gli adattatori del contenitore non supportano gli iteratori, quindi non possiamo usarli per la manipolazione dei dati. Tuttavia supportano le funzioni membro push () e pop () rispettivamente per l'inserimento e la rimozione dei dati.
Definizione
Di seguito è riportata la definizione di std :: stack dal file di intestazione <stack>
template <class T, class Container = deque<T> > class stack;
Parametri
T - Tipo di elemento contenuto.
T può essere sostituito da qualsiasi altro tipo di dati incluso il tipo definito dall'utente.
Container - Tipo di oggetto contenitore sottostante.
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 | container_type | Secondo parametro del modello |
3 | size_type | size_t |
4 | riferimento | value_type & |
5 | const_reference | const value_type & |
Funzioni da <stack>
Di seguito è riportato un elenco di tutti i metodi dall'intestazione <stack>.
Costruttori
Sr.No. | Metodo e descrizione |
---|---|
1 | stack :: costruttore predefinito dello stack Costruisce un oggetto stack vuoto, con zero elementi. |
2 | stack :: costruttore di copie dello stack Costruisce una pila con la copia di ogni elemento presente in un'altra pila. |
3 | stack :: costruttore di mosse dello stack Costruisce uno stack con il contenuto di altri utilizzando la semantica di spostamento. |
Distruttore
Sr.No. | Metodo e descrizione |
---|---|
1 | stack :: ~ stack
Distrugge lo stack deallocando la memoria del contenitore. |
Funzioni dei membri
Sr.No. | Metodo e descrizione |
---|---|
1 | stack :: emplace
Costruisce e inserisce un nuovo elemento nella parte superiore della pila. |
2 | stack :: vuoto
Verifica se lo stack è vuoto o meno. |
3 | stack :: operator = copia versione Assegna nuovi contenuti allo stack sostituendo quelli vecchi. |
4 | stack :: operator = sposta versione Assegna nuovi contenuti allo stack sostituendo quelli vecchi. |
5 | stack :: pop
Rimuove l'elemento superiore dalla pila. |
6 | stack :: versione push copy Inserisce un nuovo elemento in cima alla pila. |
7 | stack :: versione push move Inserisce un nuovo elemento in cima alla pila. |
8 | stack :: size
Restituisce il numero totale di elementi presenti nello stack. |
9 | stack :: swap
Scambia il contenuto dello stack con il contenuto di un altro stack. |
10 | stack :: top
Restituisce un riferimento all'elemento più in alto dello stack. |
Funzioni di sovraccarico non membro
Sr.No. | Metodo e descrizione |
---|---|
1 | operatore ==
Verifica se due pile sono uguali o meno. |
2 | operatore! =
Verifica se due pile sono uguali o meno. |
3 | operatore <
Verifica se il primo stack è minore di altri oppure no. |
4 | operatore <=
Verifica se il primo stack è minore o uguale ad altri oppure no. |
5 | operatore>
Verifica se il primo stack è maggiore dell'altro o meno. |
6 | operatore> =
Verifica se il primo stack è maggiore o uguale all'altro o meno. |
7 | scambiare
Scambia il contenuto di due stack. |