iterator Class

class QJsonArray::iterator

QJsonArray::iterator クラスは、QJsonArray 用の STL スタイルの非 const イテレータを提供します。さらに...

このクラスは強く比較可能です。

このクラスはQJsonArray::const_iterator強く比較可能である。

パブリック・タイプ

パブリック関数

iterator()
QJsonValueRef operator*() const
QJsonArray::iterator operator+(qsizetype j) const
QJsonArray::iterator &operator++()
QJsonArray::iterator operator++(int)
QJsonArray::iterator &operator+=(qsizetype j)
qsizetype operator-(QJsonArray::iterator other) const
QJsonArray::iterator operator-(qsizetype j) const
QJsonArray::iterator &operator--()
QJsonArray::iterator operator--(int)
QJsonArray::iterator &operator-=(qsizetype j)
const QJsonValueConstRef *operator->() const
QJsonValueRef operator[](qsizetype j) const
bool operator!=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
bool operator!=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
bool operator<(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
bool operator<(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
bool operator<=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
bool operator<=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
bool operator==(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
bool operator==(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
bool operator>(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
bool operator>(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)
bool operator>=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)
bool operator>=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)

詳しい説明

QJsonArray::iterator を使用すると、 を反復処理し、イテレータに関連付けられた配列項目を変更することができます。const に対して反復処理を行いたい場合は、代わりに を使用してください。イテレータを通して を変更する必要がない限り、const でない に対しても を使用するのが一般的です。const イテレータの方が若干高速で、コードの可読性も向上します。QJsonArray QJsonArray QJsonArray::const_iterator QJsonArray QJsonArray QJsonArray::const_iterator

デフォルトのQJsonArray::iterator コンストラクタは、初期化されていないイテレータを作成します。QJsonArray::begin ()、QJsonArray::end ()、QJsonArray::insert ()のようなQJsonArray 関数を使用して初期化しなければなりません。

ほとんどのQJsonArray 関数は、イテレータではなく整数インデックスを受け付けます。そのため、QJsonArray に関しては、イテレータはほとんど役に立ちません。STLスタイルのイテレータが意味を持つ場所の1つは、generic algorithms への引数です。

同じ配列に対して複数のイテレータを使用することができます。ただし、QJsonArray に対して const でない関数を呼び出すと、既存のすべてのイテレータが未定義になることに注意してください。

QJsonArray::const_iteratorも参照して ください。

メンバ型ドキュメント

iterator::iterator_category

std::random_access_iterator_tagのシノニムで、このイテレータがランダムアクセスイテレータであることを示す。

メンバ関数ドキュメント

iterator::iterator()

初期化されていないイテレータを構築します。

operator*() や operator++() のような関数は、初期化されていないイテレータに対して 呼び出すべきではありません。operator=() を使用して値を代入してから使用してください。

QJsonArray::begin() およびQJsonArray::end()も参照してください

QJsonValueRef iterator::operator*() const

現在の項目への変更可能な参照を返します。

項目の値を変更するには、代入の左辺で operator*() を使用します。

戻り値は、QJsonArray およびQJsonObject のヘルパー・クラスであるQJsonValueRef 型です。QJsonValueRef 型のオブジェクトを取得すると、それをあたかもQJsonValue への参照であるかのように使用することができます。これに代入すると、その代入は、参照を取得したQJsonObjectQJsonArray の文字に適用されます。

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

このイテレータからj 前方の位置のアイテムへのイテレータを返します。j が負の場合、イテレータは後方に進む。

operator-() およびoperator+=()も参照

QJsonArray::iterator &iterator::operator++()

++ の前置演算子++it は、イテレータを配列の次の項目に進め、新しい現在の項目へのイテレータを返します。

この関数をQJsonArray::end() で呼び出すと、未定義の結果になります。

operator--()も参照してください

QJsonArray::iterator iterator::operator++(int)

これはオーバーロードされた関数です。

++ の後置演算子it++ は、イテレータを配列の次の項目に進め、それ以前の現在の項目へのイテレータを返します。

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

イテレータをj アイテム分進めます。j が負の場合、イテレータは後退します。

operator-=() およびoperator+()も参照

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

other が指す項目とこのイテレータが指す項目との間の項目数を返します。

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

このイテレータから後方にj の位置にある項目へのイテレータを返します。j が負の場合、イテレータは前方に進む。

operator+() およびoperator-=()も参照

QJsonArray::iterator &iterator::operator--()

-- の前置演算子--it は、直前の項目を現在の項目にし、新しい現在の項目へのイテレータを返す。

この関数をQJsonArray::begin() で呼び出すと、未定義の結果になります。

operator++()も参照

QJsonArray::iterator iterator::operator--(int)

これはオーバーロードされた関数です。

-- の後置演算子it-- は、直前の項目を現在の項目にし、直前の現在の項目へのイテレータを返します。

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

イテレータをj アイテム分遡らせます。j が負の場合、イテレータは前に進みます。

operator+=() およびoperator-()も参照

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

現在の項目への変更可能な参照へのポインタを返します。

QJsonValueRef iterator::operator[](qsizetype j) const

このイテレータが指すアイテム(位置*this + j のアイテム)からオフセットj にあるアイテムへの変更可能な参照を返します。

この関数は、QJsonArray イテレータを C++ ポインタのように動作させるために用意されています。

戻り値は、QJsonArray およびQJsonObject のヘルパー・クラスであるQJsonValueRef 型です。QJsonValueRef 型のオブジェクトを取得すると、それをQJsonValue への参照であるかのように使用できます。これに代入すると、その代入は、参照を取得したQJsonArray またはQJsonObject の要素に適用されます。

operator+()も参照

関連する非メンバー

[noexcept] bool operator==(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)

[noexcept] bool operator==(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)

lhsrhs イテレータと同じ項目を指している場合はtrue を返し、そうでない場合はfalse を返します。

operator!=() も参照

[noexcept] bool operator!=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)

[noexcept] bool operator!=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)

lhsrhs イテレータと異なる項目を指している場合はtrue を返し、そうでない場合はfalse を返す。

operator==()も参照

[noexcept] bool operator<(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)

[noexcept] bool operator<(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)

lhs イテレータが指す項目がrhs イテレータが指す項目より小さい場合はtrue を返す。

[noexcept] bool operator<=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)

[noexcept] bool operator<=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)

lhs イテレータが指す項目がrhs イテレータが指す項目以下である場合、true を返す。

[noexcept] bool operator>(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)

[noexcept] bool operator>(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)

lhs イテレータが指すアイテムが、rhs イテレータが指すアイテムより大きければtrue を返す。

[noexcept] bool operator>=(const QJsonArray::iterator &lhs, const QJsonArray::const_iterator &rhs)

[noexcept] bool operator>=(const QJsonArray::iterator &lhs, const QJsonArray::iterator &rhs)

lhs イテレータが指すアイテムが、rhs イテレータが指すアイテム以上である場合、true を返す。

©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。