Bibliothèque C ++ - <stack>

introduction

Stack est une structure de données conçue pour fonctionner dans le contexte LIFO (Last in First Out). Dans la pile, les éléments sont insérés et supprimés d'une seule extrémité.

La classe de pile est l'adaptateur de conteneur. Le conteneur est un objet contenant des données du même type. La pile peut être créée à partir de différents conteneurs de séquence. Si le conteneur n'est pas fourni, il utilise le conteneur deque par défaut . Les adaptateurs de conteneur ne prennent pas en charge les itérateurs, nous ne pouvons donc pas les utiliser pour la manipulation de données. Cependant, ils prennent en charge les fonctions membres push () et pop () pour l'insertion et la suppression de données respectivement.

Définition

Vous trouverez ci-dessous la définition de std :: stack à partir du fichier d'en-tête <stack>

template <class T, class Container = deque<T> > class stack;

Paramètres

  • T - Type de l'élément contenu.

    T peut être remplacé par tout autre type de données, y compris le type défini par l'utilisateur.

  • Container - Type de l'objet conteneur sous-jacent.

Types de membres

Les types de membres suivants peuvent être utilisés comme paramètres ou comme type de retour par les fonctions membres.

N ° Sr. Types de membres Définition
1 type de valeur T (premier paramètre du modèle)
2 container_type Deuxième paramètre du modèle
3 type de taille size_t
4 référence type de valeur&
5 const_reference const value_type &

Fonctions de <stack>

Vous trouverez ci-dessous la liste de toutes les méthodes de l'en-tête <stack>.

Constructeurs

N ° Sr. Méthode et description
1 constructeur par défaut stack :: stack

Construit un objet de pile vide, avec zéro élément.

2 stack :: stack copy constructeur

Construit une pile avec une copie de chaque élément présent dans une autre pile.

3 stack :: stack move constructeur

Construit une pile avec le contenu des autres en utilisant la sémantique de déplacement.

Destructeur

N ° Sr. Méthode et description
1 pile :: ~ pile

Détruit la pile en libérant la mémoire du conteneur.

Fonctions des membres

N ° Sr. Méthode et description
1 pile :: mettre en place

Construit et insère un nouvel élément en haut de la pile.

2 pile :: vide

Teste si la pile est vide ou non.

3 stack :: operator = copie de la version

Attribue un nouveau contenu à la pile en remplaçant les anciens.

4 stack :: operator = déplacer la version

Attribue un nouveau contenu à la pile en remplaçant les anciens.

5 pile :: pop

Supprime l'élément supérieur de la pile.

6 stack :: version de copie push

Insère un nouvel élément en haut de la pile.

sept stack :: version push move

Insère un nouvel élément en haut de la pile.

8 taille de la pile

Renvoie le nombre total d'éléments présents dans la pile.

9 stack :: swap

Échange le contenu de la pile avec le contenu d'une autre pile.

dix pile :: haut

Renvoie une référence à l'élément le plus haut de la pile.

Fonctions surchargées non membres

N ° Sr. Méthode et description
1 opérateur ==

Teste si deux piles sont égales ou non.

2 opérateur! =

Teste si deux piles sont égales ou non.

3 opérateur <

Teste si la première pile est inférieure à autre ou non.

4 opérateur <=

Teste si la première pile est inférieure ou égale à autre ou non.

5 opérateur>

Teste si la première pile est supérieure à autre ou non.

6 opérateur> =

Teste si la première pile est supérieure ou égale à autre ou non.

sept échanger

Échange le contenu de deux piles.