QStack Class
template <typename T> class QStackDie Klasse QStack ist eine Vorlagenklasse, die einen Stack bereitstellt. Mehr...
Kopfzeile: | #include <QStack> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Vererbt: | QList |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QStack ist Teil von Implicitly Shared Classes.
Hinweis: Alle Funktionen in dieser Klasse sind reentrant.
Öffentliche Funktionen
Detaillierte Beschreibung
QStack<T> ist eine der generischen Container-Klassen von Qt. Sie implementiert eine Stack-Datenstruktur für Elemente desselben Typs.
Ein Stack ist eine LIFO-Struktur (last in, first out). Elemente werden mit push() an die Spitze des Stapels hinzugefügt und mit pop() von der Spitze abgerufen. Die Funktion top() ermöglicht den Zugriff auf das oberste Element, ohne es zu entfernen.
Beispiel:
QStack<int> stack; stack.push(1); stack.push(2); stack.push(3); while (!stack.isEmpty()) cout << stack.pop() << Qt::endl;
Das Beispiel wird 3, 2, 1 in dieser Reihenfolge ausgeben.
QStack erbt von QList. Die gesamte Funktionalität von QList gilt auch für QStack. Sie können zum Beispiel isEmpty() verwenden, um zu testen, ob der Stack leer ist, und Sie können einen QStack mit den Iterator-Klassen von QList durchlaufen (zum Beispiel QListIterator). Darüber hinaus bietet QStack drei Komfortfunktionen, die die Implementierung der LIFO-Semantik erleichtern: push(), pop() und top().
Der Wertetyp von QStack muss ein zuweisbarer Datentyp sein. Dies deckt die meisten gebräuchlichen Datentypen ab, aber der Compiler lässt es nicht zu, dass Sie z.B. einen QWidget als Wert speichern; speichern Sie stattdessen einen QWidget *.
Dokumentation der Mitgliedsfunktionen
T QStack::pop()
Entfernt das oberste Element aus dem Stapel und gibt es zurück. Diese Funktion geht davon aus, dass der Stapel nicht leer ist.
Siehe auch top(), push(), und isEmpty().
void QStack::push(const T &t)
Fügt das Element t oben auf dem Stapel hinzu.
Dies ist dasselbe wie QList::append().
[noexcept]
void QStack::swap(QStack<T> &other)
Tauscht diesen Stapel mit other aus. Dieser Vorgang ist sehr schnell und schlägt nie fehl.
T &QStack::top()
Gibt einen Verweis auf das oberste Element des Stacks zurück. Diese Funktion geht davon aus, dass der Stack nicht leer ist.
Dies ist dasselbe wie QList::last().
Siehe auch pop(), push(), und isEmpty().
const T &QStack::top() const
Dies ist eine überladene Funktion.
© 2025 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.