Sur cette page

QStack Class

template <typename T> class QStack

La classe QStack est une classe modèle qui fournit une pile. Plus d'informations...

En-tête : #include <QStack>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core
Héritages : QList

Note : Toutes les fonctions de cette classe sont réentrantes.

Fonctions publiques

T pop()
(since 6.11) void push(T &&t)
void push(const T &t)
void swap(QStack<T> &other)
T &top()
const T &top() const

Description détaillée

QStack<T> est l'une des classes de conteneurs génériques de Qt. Elle implémente une structure de données de pile pour les éléments d'un même type.

Une pile est une structure LIFO (last in, first out). Les éléments sont ajoutés au sommet de la pile à l'aide de la fonction push() et extraits du sommet à l'aide de la fonction pop(). La fonction top() permet d'accéder à l'élément le plus haut sans le supprimer.

Exemple :

    QStack<int> stack;
    stack.push(1);
    stack.push(2);
    stack.push(3);
    while (!stack.isEmpty())
        cout << stack.pop() << Qt::endl;

L'exemple donnera 3, 2, 1 dans cet ordre.

QStack hérite de QList. Toutes les fonctionnalités de QList s'appliquent également à QStack. Par exemple, vous pouvez utiliser isEmpty() pour tester si la pile est vide, et vous pouvez parcourir une QStack en utilisant les classes d'itérateurs de QList(par exemple, QListIterator). En outre, QStack fournit trois fonctions de commodité qui facilitent la mise en œuvre de la sémantique LIFO : push(), pop() et top().

Le type de valeur de QStack doit être un type de données assignable. Cela couvre la plupart des types de données couramment utilisés, mais le compilateur ne vous laissera pas, par exemple, stocker un QWidget comme valeur ; à la place, stockez un QWidget *.

Voir également QList et QQueue.

Documentation sur les fonctions membres

T QStack::pop()

Retire l'élément supérieur de la pile et le renvoie. Cette fonction suppose que la pile n'est pas vide.

Voir aussi top(), push() et isEmpty().

[since 6.11] void QStack::push(T &&t)

Ajoute l'élément t au sommet de la pile.

C'est la même chose que QList::append().

Cette fonction a été introduite dans Qt 6.11.

Voir aussi pop() et top().

void QStack::push(const T &t)

Ajoute l'élément t au sommet de la pile.

C'est la même chose que QList::append().

Voir aussi pop() et top().

[noexcept] void QStack::swap(QStack<T> &other)

Remplace cette pile par other. Cette opération est très rapide et n'échoue jamais.

T &QStack::top()

Renvoie une référence au premier élément de la pile. Cette fonction suppose que la pile n'est pas vide.

C'est la même chose que QList::last().

Voir aussi pop(), push() et isEmpty().

const T &QStack::top() const

Il s'agit d'une fonction surchargée.

Voir aussi pop() et push().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.