QIterator Struct

template <typename Container> struct QIterator

The QIterator is a template class that allows iteration over a container in a QVariant. More...

Header: #include <QIterator>
CMake: find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Since: Qt 6.0
Inherits: QBaseIterator

Public Functions

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)

Detailed Description

A QIterator can only be created by a QIterable instance, and can be used in a way similar to other stl-style iterators. Generally, QIterator should not be used directly, but through its derived classes provided by QSequentialIterable and QAssociativeIterable.

See also QIterable.

Member Function Documentation

QIterator::QIterator(QIterable<Container> *iterable, void *iterator)

Creates an iterator from an iterable and a pointer to a native iterator.

bool QIterator::operator!=(const QIterator<Container> &other) const

Returns true if other points to a different item than this iterator; otherwise returns false.

See also operator==().

QIterator<Container> QIterator::operator+(qsizetype j) const

Returns an iterator to the item at j positions forward from this iterator.

See also operator-() and operator+=().

QIterator<Container> &QIterator::operator++()

The prefix ++ operator (++it) advances the iterator to the next item in the container and returns an iterator to the new current item.

Calling this function on QSequentialIterable::end() leads to undefined results.

See also operator--().

QIterator<Container> QIterator::operator++(int)

This is an overloaded function.

The postfix ++ operator (it++) advances the iterator to the next item in the container and returns an iterator to the previously current item.

QIterator<Container> &QIterator::operator+=(qsizetype j)

Advances the iterator by j items.

See also operator-=() and operator+().

QIterator<Container> QIterator::operator-(qsizetype j) const

Returns an iterator to the item at j positions backward from this iterator.

If the container in the QVariant does not support bi-directional iteration, calling this function leads to undefined results.

See also operator+(), operator-=(), and QIterable::canReverseIterate().

qsizetype QIterator::operator-(const QIterator<Container> &j) const

Returns the distance between the two iterators.

See also operator+(), operator-=(), and QIterable::canReverseIterate().

QIterator<Container> &QIterator::operator--()

The prefix -- operator (--it) makes the preceding item current and returns an iterator to the new current item.

Calling this function on QSequentialIterable::begin() leads to undefined results.

If the container in the QVariant does not support bi-directional iteration, calling this function leads to undefined results.

See also operator++() and QIterable::canReverseIterate().

QIterator<Container> QIterator::operator--(int)

This is an overloaded function.

The postfix -- operator (it--) makes the preceding item current and returns an iterator to the previously current item.

If the container in the QVariant does not support bi-directional iteration, calling this function leads to undefined results.

See also QIterable::canReverseIterate().

QIterator<Container> &QIterator::operator-=(qsizetype j)

Makes the iterator go back by j items.

If the container in the QVariant does not support bi-directional iteration, calling this function leads to undefined results.

See also operator+=(), operator-(), and QIterable::canReverseIterate().

bool QIterator::operator==(const QIterator<Container> &other) const

Returns true if other points to the same item as this iterator; otherwise returns false.

See also operator!=().

Related Non-Members

QIterator<Container> operator+(qsizetype j, const QIterator<Container> &k)

Returns an iterator to the item at j positions forward from iterator k.

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