const_iterator 类

class QJsonArray::const_iterator

QJsonArray::const_iterator 类提供了一个 STL 样式的常量迭代器,用于 QJsonArray。《更多...

公共类型

公共函数

const_iterator()
const_iterator(const QJsonArray::iterator &other)
booloperator!=(const QJsonArray::const_iterator &other) const
const QJsonValueConstRefoperator*() const
QJsonArray::const_iteratoroperator+(qsizetype j) const
QJsonArray::const_iterator &operator++()
QJsonArray::const_iteratoroperator++(int)
QJsonArray::const_iterator &operator+=(qsizetype j)
QJsonArray::const_iteratoroperator-(qsizetype j) const
qsizetypeoperator-(QJsonArray::const_iterator other) const
QJsonArray::const_iterator &operator--()
QJsonArray::const_iteratoroperator--(int)
QJsonArray::const_iterator &operator-=(qsizetype j)
const QJsonValueConstRef *operator->() const
booloperator<(const QJsonArray::const_iterator &other) const
booloperator<=(const QJsonArray::const_iterator &other) const
booloperator==(const QJsonArray::const_iterator &other) const
booloperator>(const QJsonArray::const_iterator &other) const
booloperator>=(const QJsonArray::const_iterator &other) const
QJsonValueConstRefoperator[](qsizetype j) const

详细说明

QJsonArray::const_iterator 允许您遍历一个 QJsonArray。如果在遍历过程中要修改 QJsonArray,则应使用 QJsonArray::iterator。在大多数情况下,将 QJsonArray::const_iterator 用于非常量 QJsonArray 也是一种良好的实践,除非您需要通过迭代器修改 QJsonArray。常量迭代器速度略快,且可提高代码可读性。

默认的 QJsonArray::const_iterator 构造函数创建一个未初始化的迭代器。在使用它迭代之前,您必须使用 QJsonArray 函数如 QJsonArray::constBegin()、QJsonArray::constEnd() 或 QJsonArray::insert() 来初始化它。

大多数 QJsonArray 函数接受一个整数索引而不是迭代器。因此,在关联 QJsonArray 时迭代器很少有用。STL风格迭代器有意义的一个地方是作为 泛型算法 的参数。

可以在同一数组上使用多个迭代器。但是,请注意,对 QJsonArray 执行的任何非const函数调用都将使所有现有迭代器无效。

另请参阅QJsonArray::iterator

成员类型文档

const_iterator::iterator_category

std::random_access_iterator_tag 的同义词,表示此迭代器是一个随机访问迭代器。

成员函数文档

const_iterator::const_iterator()

构造一个未初始化的迭代器。

不应在未初始化的迭代器上调用如 operator*() 和 operator++() 等函数。在使用它之前,请使用 operator=() 将值分配给它。

另请参阅QJsonArray::constBeginQJsonArray::constEnd

const_iterator::const_iterator(const QJsonArray::iterator &other)

构造 other 的副本。

bool const_iterator::operator!=(const QJsonArray::const_iterator &other) const

如果 other 指向不同的项,则返回 true;否则返回 false

另请参阅operator==

const QJsonValueConstRef const_iterator::operator*() const

返回当前项。

QJsonArray::const_iterator const_iterator::operator+(qsizetype j) const

返回一个迭代器,该迭代器指向从当前迭代器起 j 个位置的项。如果 j 为负值,则迭代器向后移动。

另请参阅operator-operator+=

QJsonArray::const_iterator &const_iterator::operator++()

前缀 ++ 运算符,++it,将迭代器移动到数组中的下一个项,并返回对新当前项的迭代器。

QJsonArray::end() 上调用此函数将导致未定义的结果。

另请参阅operator--

QJsonArray::const_iterator const_iterator::operator++(int)

这是一个重载函数。

后缀 ++ 运算符,it++,将迭代器移动到数组中的下一个项,并返回对先前当前项的迭代器。

QJsonArray::const_iterator &const_iterator::operator+=(qsizetype j)

将迭代器向前移动j个项目。如果j为负数,则迭代器向后移动。

另请参阅operator-=()和operator+

QJsonArray::const_iterator const_iterator::operator-(qsizetype j) const

返回一个迭代器,指向距离此迭代器j个位置后的项目。如果j为负数,则迭代器向前移动。

另请参阅operator+()和operator-=

qsizetype const_iterator::operator-(QJsonArray::const_iterator other) const

返回other指针所在项目与此迭代器指针所在项目之间的项目数量。

QJsonArray::const_iterator &const_iterator::operator--()

前缀--运算符,--it,使前面的项目成为当前项目,并返回对新的当前项目的迭代器。

QJsonArray::begin()上调用此函数会导致结果未定义。

另请参阅operator++

QJsonArray::const_iterator const_iterator::operator--(int)

这是一个重载函数。

后缀--运算符,it--,使前面的项目成为当前项目,并返回对之前当前项目的迭代器。

QJsonArray::const_iterator &const_iterator::operator-=(qsizetype j)

使迭代器向后移动j个项目。如果j为负数,则迭代器向前移动。

另请参阅operator+=()和operator-

const QJsonValueConstRef *const_iterator::operator->() const

返回对当前项目的指针。

bool const_iterator::operator<(const QJsonArray::const_iterator &other) const

如果此迭代器指的项目小于其他迭代器指的项目,则返回true

bool const_iterator::operator<=(const QJsonArray::const_iterator &other) const

如果此迭代器指的项目小于或等于其他迭代器指的项目,则返回true

bool const_iterator::operator==(const QJsonArray::const_iterator &other) const

如果other指向与这个迭代器指向同一个项目,则返回true;否则返回false

另请参阅operator!=

bool const_iterator::operator>(const QJsonArray::const_iterator &other) const

如果此迭代器指向的项大于其他迭代器指向的项,则返回 true

bool const_iterator::operator>=(const QJsonArray::const_iterator &other) const

如果此迭代器指向的项大于或等于其他迭代器指向的项,则返回 true

QJsonValueConstRef const_iterator::operator[](qsizetype j) const

返回从此迭代器指向的项开始偏移 j 的项(位置为 *this + j 的项)。

此函数提供,以便使 QJsonArray 迭代器表现得像 C++ 指针。

另请参阅 operator+

© 2024 The Qt Company Ltd. 本文档中包含的文档贡献的版权属于各自的所有者。提供的文档依据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 和相应的标志是芬兰的 The Qt Company Ltd. 以及全球其他国家的 商标。所有其他商标均为各自所有者的财产。