iterator Class
class QJsonArray::iteratorQJsonArray::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 への参照であるかのように使用することができます。これに代入すると、その代入は、参照を取得したQJsonObject のQJsonArray の文字に適用されます。
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)
lhs がrhs イテレータと同じ項目を指している場合は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
を返し、そうでない場合は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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。