Структура QIterator
шаблон <typename Container> struct QIteratorQIterator — это шаблонный класс, который позволяет перебирать контейнер в QVariant. Подробнее...
| Заголовок: | #include <QIterator> |
| CMake: | find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| С тех пор: | Qt 6.0 |
| Наследует: | QBaseIterator |
Открытые функции
| QIterator(QIterable<Container> *iterable, void *iterator) | |
| bool | operator!=(const QIterator<Container> &other) const |
| QIterator<Container> | operator+(qsizetype j) const |
| QIterator<Container> & | operator++() |
| QIterator<Container> | operator++(int) |
| QIterator<Container> & | operator+=(qsizetype j) |
| QIterator<Container> | operator-(qsizetype j) const |
| qsizetype | operator-(const QIterator<Container> &j) const |
| QIterator<Container> & | operator--() |
| QIterator<Container> | operator--(int) |
| QIterator<Container> & | operator-=(qsizetype j) |
| bool | operator==(const QIterator<Container> &other) const |
Связанные нечлены
| QIterator<Container> | operator+(qsizetype j, const QIterator<Container> &k) |
Подробное описание
QIterator может быть создан только экземпляром QIterable, и может использоваться аналогично другим итераторам в стиле STL. В целом, QIterator не следует использовать напрямую, а через производные классы, предоставляемые QSequentialIterable и QAssociativeIterable.
См. также QIterable.
Документация по членам-функциям
QIterator::QIterator(QIterable<Container> *iterable, void *iterator)
Создаёт итератор из iterable и указателя на родной iterator.
bool QIterator::operator!=(const QIterator<Container> &other) const
Возвращает true если other указывает на другой элемент, чем этот итератор; в противном случае возвращает false.
См. также operator==().
QIterator<Container> QIterator::operator+(qsizetype j) const
Возвращает итератор на элемент, находящийся на j позиций вперёд от текущего итератора.
См. также operator-() и operator+=().
QIterator<Container> &QIterator::operator++()
Префиксный оператор ++ (++it) перемещает итератор к следующему элементу в контейнере и возвращает итератор на новый текущий элемент.
Вызов этой функции для QSequentialIterable::end() приводит к неопределённому результату.
См. также operator--().
QIterator<Container> QIterator::operator++(int)
Это перегруженная функция.
Постфиксный оператор ++ (it++) перемещает итератор к следующему элементу в контейнере и возвращает итератор на предыдущий текущий элемент.
QIterator<Container> &QIterator::operator+=(qsizetype j)
Перемещает итератор на j элементов вперёд.
См. также operator-=() и operator+().
QIterator<Container> QIterator::operator-(qsizetype j) const
Возвращает итератор на элемент, находящийся на j позиций назад от текущего итератора.
Если контейнер в QVariant не поддерживает двунаправленную итерацию, вызов этой функции приводит к неопределённому результату.
См. также operator+(), operator-=(), и QIterable::canReverseIterate().
qsizetype QIterator::operator-(const QIterator<Container> &j) const
Возвращает расстояние между двумя итераторами.
См. также operator+(), operator-=(), и QIterable::canReverseIterate().
QIterator<Container> &QIterator::operator--()
Префиксный оператор -- (--it) устанавливает предыдущий элемент как текущий и возвращает итератор на новый текущий элемент.
Вызов этой функции для QSequentialIterable::begin() приводит к неопределённому результату.
Если контейнер в QVariant не поддерживает двунаправленную итерацию, вызов этой функции приводит к неопределённому результату.
См. также operator++() и QIterable::canReverseIterate().
QIterator<Container> QIterator::operator--(int)
Это перегруженная функция.
Постфиксный оператор -- (it--) устанавливает предыдущий элемент как текущий и возвращает итератор на предыдущий текущий элемент.
Если контейнер в QVariant не поддерживает двунаправленную итерацию, вызов этой функции приводит к неопределённому результату.
См. также QIterable::canReverseIterate().
QIterator<Container> &QIterator::operator-=(qsizetype j)
Перемещает итератор назад на j элементов.
Если контейнер в QVariant не поддерживает двунаправленную итерацию, вызов этой функции приводит к неопределённому результату.
См. также operator+=(), operator-(), и QIterable::canReverseIterate().
bool QIterator::operator==(const QIterator<Container> &other) const
Возвращает true если other указывает на тот же элемент, что и этот итератор; в противном случае возвращает false.
См. также operator!=().
Связанные нечлены
QIterator<Container> operator+(qsizetype j, const QIterator<Container> &k)
Возвращает итератор на элемент, находящийся на j позиций вперёд от итератора k.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qiterator.html