Spec-Zone.ru › Qt 5.9

Класс 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
  • 89 открытых функций, унаследованных от QVector

Дополнительные унаследованные члены

  • 2 статических открытых члена, унаследованных от QVector

Подробное описание

Класс QStack — это шаблонный класс, предоставляющий стек.

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() << endl;

Пример выведет 3, 2, 1 в этом порядке.

QStack наследуется от QVector. Вся функциональность QVector также применима к QStack. Например, можно использовать isEmpty() для проверки, пуст ли стек, и можно пройтись по QStack с помощью итераторных классов QVector (например, QVectorIterator). Но, кроме того, QStack предоставляет три вспомогательные функции, которые упрощают реализацию семантики LIFO: push(), pop() и top().

Тип значения QStack должен быть присваиваемым типом данных. Это охватывает большинство часто используемых типов данных, но компилятор не позволит вам, например, хранить QWidget в качестве значения; вместо этого храните QWidget *.

См. также QVector и QQueue.

Документация по функциям-членам

T QStack::pop()

Удаляет верхний элемент из стека и возвращает его. Эта функция предполагает, что стек не пуст.

См. также top(), push() и isEmpty().

void QStack::push(const T &t)

Добавляет элемент t в начало стека.

Это то же самое, что и QVector::append().

См. также pop() и top().

void QStack::swap(QStack<T> &other)

Обменивает стек other с этим стеком. Эта операция очень быстрая и никогда не завершается ошибкой.

Эта функция была добавлена в Qt 4.8.

T &QStack::top()

Возвращает ссылку на верхний элемент стека. Эта функция предполагает, что стек не пуст.

Это то же самое, что и QVector::last().

См. также pop(), push() и isEmpty().

const T &QStack::top() const

Это перегруженная функция.

См. также pop() и push().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qstack.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API