const_iterator 类
class QJsonArray::const_iteratorQJsonArray::const_iterator 类提供了一个 STL 样式的常量迭代器,用于 QJsonArray。《更多...
公共类型
公共函数
const_iterator() | |
const_iterator(const QJsonArray::iterator &other) | |
bool | operator!=(const QJsonArray::const_iterator &other) const |
const QJsonValueConstRef | operator*() const |
QJsonArray::const_iterator | operator+(qsizetype j) const |
QJsonArray::const_iterator & | operator++() |
QJsonArray::const_iterator | operator++(int) |
QJsonArray::const_iterator & | operator+=(qsizetype j) |
QJsonArray::const_iterator | operator-(qsizetype j) const |
qsizetype | operator-(QJsonArray::const_iterator other) const |
QJsonArray::const_iterator & | operator--() |
QJsonArray::const_iterator | operator--(int) |
QJsonArray::const_iterator & | operator-=(qsizetype j) |
const QJsonValueConstRef * | operator->() const |
bool | operator<(const QJsonArray::const_iterator &other) const |
bool | operator<=(const QJsonArray::const_iterator &other) const |
bool | operator==(const QJsonArray::const_iterator &other) const |
bool | operator>(const QJsonArray::const_iterator &other) const |
bool | operator>=(const QJsonArray::const_iterator &other) const |
QJsonValueConstRef | operator[](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::const_iterator()
构造一个未初始化的迭代器。
不应在未初始化的迭代器上调用如 operator*() 和 operator++() 等函数。在使用它之前,请使用 operator=() 将值分配给它。
另请参阅QJsonArray::constBegin 和 QJsonArray::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. 以及全球其他国家的 商标。所有其他商标均为各自所有者的财产。