Iterator Class

class QCborMap::Iterator

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

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

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

パブリック・タイプ

パブリック関数

Iterator()
Iterator(const QCborMap::Iterator &other)
QCborValue key() const
QCborValueRef value() const
QCborMap::Iterator::value_type operator*() const
QCborMap::Iterator operator+(qsizetype j) const
QCborMap::Iterator &operator++()
QCborMap::Iterator operator++(int)
QCborMap::Iterator &operator+=(qsizetype j)
qsizetype operator-(QCborMap::Iterator j) const
QCborMap::Iterator operator-(qsizetype j) const
QCborMap::Iterator &operator--()
QCborMap::Iterator operator--(int)
QCborMap::Iterator &operator-=(qsizetype j)
const QCborValueConstRef *operator->() const
QCborMap::Iterator &operator=(const QCborMap::Iterator &other)
bool operator!=(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)
bool operator!=(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)
bool operator<(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)
bool operator<(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)
bool operator<=(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)
bool operator<=(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)
bool operator==(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)
bool operator==(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)
bool operator>(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)
bool operator>(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)
bool operator>=(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)
bool operator>=(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)

詳細説明

QCborMap::Iterator を使用すると、 を繰り返し処理したり、特定のキーの下に格納されている値 (キーではない) を変更したりできます。const を繰り返し処理したい場合は、 を使用する必要があります。イテレータを使用して を変更する必要がない限り、const 以外に を使用するのが一般的です。constイテレータの方が若干高速で、コードの可読性も向上します。QCborMap QCborMap QCborMap::ConstIterator QCborMap QCborMap QCborMap::ConstIterator

QCborMap::begin ()、QCborMap::end ()、QCborMap::find ()のようなQCborMap 関数を使用してイテレータを初期化する必要があります。

同じオブジェクトに複数のイテレータを使用することができます。ただし、オブジェクトが変更されると、既存のイテレータはぶら下がった状態になります。

QCborMap::ConstIteratorも参照して ください。

メンバ型の説明

Iterator::iterator_category

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

メンバ関数ドキュメント

[constexpr noexcept] Iterator::Iterator()

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

key(),value(), operator++() のような関数を、初期化されていないイテレータに対して呼んではいけません。operator=() を使用して値を代入してから使用してください。

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

[constexpr noexcept] Iterator::Iterator(const QCborMap::Iterator &other)

other のコピーとしてイテレータを構築します。

QCborValue Iterator::key() const

現在の項目のキーを返します。

アイテムのキーをイテレータで直接変更する方法はありませんが、QCborMap::erase() の後にQCborMap::insert() を呼び出すことで変更できます。

value()も参照

QCborValueRef Iterator::value() const

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

キーの値を変更するには、代入の左辺で value() を使用します。

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

key() およびoperator*()も参照してください

QCborMap::Iterator::value_type Iterator::operator*() const

現在の項目のキーと、現在の項目の値への変更可能な参照を含むペアを返します。

ペアの 2 番目の要素は、QCborArray およびQCborMap のヘルパー・クラスである QCborValueRef 型です。QCborValueRef 型のオブジェクトを取得すると、それをQCborValue への参照と同じように使用できます。これに代入すると、その代入は、参照を取得したQCborArray またはQCborMap の要素に適用されます。

key() およびvalue()も参照

QCborMap::Iterator Iterator::operator+(qsizetype j) const

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

operator-()も参照

QCborMap::Iterator &Iterator::operator++()

前置演算子++ ++i は、イテレータをマップ内の次の項目に進め、このイテレータを返します。

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

operator--()も参照

QCborMap::Iterator Iterator::operator++(int)

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

ポストフィックス++ 演算子i++ は、イテレータをマップ内の次の項目に進め、それ以前の現在の項目へのイテレータを返します。

QCborMap::Iterator &Iterator::operator+=(qsizetype j)

イテレータをj アイテム分進めます。j が負の場合、イテレータは逆方向に進みます。このイテレータへの参照を返します。

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

qsizetype Iterator::operator-(QCborMap::Iterator j) const

このイテレータの項目に対する、イテレータj の項目の相対位置を返します。j の項目がこのイテレータより前方にある場合、返される値は負になります。

operator+()も参照

QCborMap::Iterator Iterator::operator-(qsizetype j) const

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

operator+()も参照

QCborMap::Iterator &Iterator::operator--()

-- の前置演算子--i は、直前の項目をカレントにして、このイテレータを返します。

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

operator++()も参照

QCborMap::Iterator Iterator::operator--(int)

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

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

QCborMap::Iterator &Iterator::operator-=(qsizetype j)

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

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

const QCborValueConstRef *Iterator::operator->() const

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

QCborMap::Iterator &Iterator::operator=(const QCborMap::Iterator &other)

このイテレータをother のコピーとし、このイテレータへの参照を返します。

関連する非メンバー

[noexcept] bool operator==(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)

[noexcept] bool operator==(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)

lhsrhs イテレータとマップ内の同じエントリを指している場合はtrue を返し、そうでない場合はfalse を返します。

operator!=()も参照

[noexcept] bool operator!=(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)

[noexcept] bool operator!=(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)

lhs がマップ内のrhs イテレータとは異なるエントリを指している場合はtrue を返し、そうでない場合はfalse を返す。

operator==() も参照

[noexcept] bool operator<(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)

[noexcept] bool operator<(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)

lhs イテレータが指すマップ内のエントリが、rhs イテレータが指すエントリよりも前に存在する場合はtrue を返す。

[noexcept] bool operator<=(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)

[noexcept] bool operator<=(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)

lhs イテレータが指すマップ内のエントリが、rhs イテレータが指すエントリよりも前に存在するか、または同じエントリである場合、true を返す。

[noexcept] bool operator>(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)

[noexcept] bool operator>(const QCborMap::Iterator &lhs, const QCborMap::Iterator &rhs)

lhs イテレータが指すマップ内のエントリが、rhs イテレータが指すエントリの後に存在する場合、true を返す。

[noexcept] bool operator>=(const QCborMap::Iterator &lhs, const QCborMap::ConstIterator &rhs)

[noexcept] bool operator>=(const QCborMap::Iterator &lhs, const QCborMap::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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。