- Qt 6.9
- Qt Core
- C++ Classes
- QConstIterator
- Qt 6.9.3 Reference Documentation

# QConstIterator Struct

template <typename Container> struct QConstIterator

The QConstIterator allows iteration over a container in a QVariant. More...

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

- List of all members, including inherited members

## Public Functions

| QConstIterator(const QIterable<Container> *iterable, void *iterator)
bool | operator!=(const QConstIterator<Container> &other) const
QConstIterator<Container> | operator+(qsizetype j) const
QConstIterator<Container> & | operator++()
QConstIterator<Container> | operator++(int)
QConstIterator<Container> & | operator+=(qsizetype j)
QConstIterator<Container> | operator-(qsizetype j) const
qsizetype | operator-(const QConstIterator<Container> &j) const
QConstIterator<Container> & | operator--()
QConstIterator<Container> | operator--(int)
QConstIterator<Container> & | operator-=(qsizetype j)
bool | operator==(const QConstIterator<Container> &other) const

## Detailed Description

See also QIterator and QIterable.

## Member Function Documentation

### `[explicit]` QConstIterator::QConstIterator(const QIterable<Container> *iterable, void *iterator)

Creates a QConstIterator to wrap iterator, operating on iterable.

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

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

See also operator==().

### QConstIterator<Container> QConstIterator::operator+(qsizetype j) const

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

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

### QConstIterator<Container> &QConstIterator::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 QIterable<Container>::end() leads to undefined results.

See also operator--().

### QConstIterator<Container> QConstIterator::operator++(int)

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

This is an overloaded function.

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

Advances the iterator by j items.

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

### QConstIterator<Container> QConstIterator::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 QConstIterator::operator-(const QConstIterator<Container> &j) const

Returns the distance between the two iterators.

This is an overloaded function.

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

### QConstIterator<Container> &QConstIterator::operator--()

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

Calling this function on QIterable<Container>::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().

### QConstIterator<Container> QConstIterator::operator--(int)

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.

This is an overloaded function.

See also QIterable::canReverseIterate().

### QConstIterator<Container> &QConstIterator::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 QConstIterator::operator==(const QConstIterator<Container> &other) const

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

See also operator!=().