Класс QStack
шаблон <typename T> класс QStackКласс QStack — это шаблонный класс, предоставляющий стек. Подробнее...
| Заголовок: | #include <QStack> |
| qmake: | QT += core |
| Наследует: | QVector |
Примечание: Все функции в этом классе являются повторно-входными.
Открытые функции
| T | pop() |
| void | push(const T &t) |
| void | swap(QStack<T> &other) |
| T & | top() |
| const T & | top() const |
Подробное описание
QStack<T> — это один из общих контейнерных классов Qt. Он реализует структуру данных стека для элементов одного типа.
Стек — это структура данных «последним вошел, первым вышел» (LIFO). Элементы добавляются в верхнюю часть стека с помощью push() и извлекаются из верхней части с помощью pop(). Функция top() предоставляет доступ к верхнему элементу без его удаления.
Пример:
QStack<int> stack;
stack.push(1);
stack.push(2);
stack.push(3);
while (!stack.isEmpty())
cout << stack.pop() << Qt::endl; Пример выведет 3, 2, 1 в таком порядке.
QStack наследуется от QVector. Все возможности QVector также применяются к QStack. Например, можно использовать isEmpty(), чтобы проверить, пуст ли стек, и можно перебирать QStack с помощью итераторов QVector (например, QVectorIterator). Но помимо этого, QStack предоставляет три удобные функции, которые упрощают реализацию семантики LIFO: push(), pop() и top().
Тип значения QStack должен быть типом данных, допускающим присваивание. Это охватывает большинство типов данных, которые обычно используются, но компилятор не позволит вам, например, хранить QWidget как значение; вместо этого храните QWidget *.
Документация по функциям-членам
T QStack::pop()
Удаляет верхний элемент из стека и возвращает его. Эта функция предполагает, что стек не пуст.
См. также top(), push() и isEmpty().
void QStack::push(const T &t)
Добавляет элемент t в верхнюю часть стека.
Это то же самое, что и QVector::append().
void QStack::swap(QStack<T> &other)
Меняет местами стек other с этим стеком. Эта операция очень быстрая и никогда не терпит неудачу.
Эта функция была введена в Qt 4.8.
T &QStack::top()
Возвращает ссылку на верхний элемент стека. Эта функция предполагает, что стек не пуст.
Это то же самое, что и QVector::last().
См. также pop(), push() и isEmpty().
const T &QStack::top() const
Это перегруженная функция.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qstack.html