QCborMap::Iterator Class
class QCborMap::IteratorQCborMap::Iterator クラスは、QCborMap 用のSTLスタイルの非constイテレータを提供します。詳細...
- 継承されたメンバーを含むすべてのメンバーの一覧
- Iterator はQt の CBOR サポートの一部です。
QCborMap::Iterator の比較
| カテゴリ | 比較可能な型 |
|---|---|
| strong | QCborMap::Iterator |
| strong | ConstIterator. |
パブリック型
パブリック関数
| Iterator() | |
| Iterator(const QCborMap::Iterator &other) | |
| ~Iterator() | |
| 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 を使用すると、QCborMap を反復処理し、特定のキーの下に格納されている値(キー自体は変更不可)を変更することができます。 constQCborMap を反復処理したい場合は、QCborMap::ConstIterator を使用してください。イテレータを通じてQCborMap を変更する必要がない限り、非 constQCborMap に対してもQCborMap::ConstIterator を使用するのが一般的なベストプラクティスです。const イテレータは若干高速であり、コードの可読性を向上させます。
反復処理を開始する前に、QCborMap::begin()、QCborMap::end()、またはQCborMap::find() といったQCborMap 関数を使用してイテレータを初期化する必要があります。
同じオブジェクトに対して複数のイテレータを使用することができます。ただし、オブジェクトが変更されると、既存のイテレータはダングリングイテレータとなってしまいます。
QCborMap::ConstIteratorも参照してください 。
メンバ型のドキュメント
Iterator::iterator_category
このイテレータがランダムアクセス・イテレータであることを示す、std::random_access_iterator_tagの同義語。
メンバ関数のドキュメント
[constexpr noexcept default] Iterator::Iterator()
初期化されていないイテレータを生成します。
key()、value()、およびoperator++() などの関数は、初期化されていないイテレータに対して呼び出してはなりません。使用する前に、operator=() を使用して値を代入してください。
QCborMap::begin() およびQCborMap::end()も参照してください 。
[constexpr noexcept default] Iterator::Iterator(const QCborMap::Iterator &other)
other のコピーとしてイテレータを作成します。
[constexpr noexcept default] Iterator::~Iterator()
Iterator のインスタンスを破棄します。
QCborValue Iterator::key() const
現在の項目のキーを返します。
イテレータを通じて項目のキーを直接変更する方法はありませんが、QCborMap::erase() を呼び出した後にQCborMap::insert() を呼び出すことで変更することは可能です。
value()も参照してください 。
QCborValueRef Iterator::value() const
現在の項目の値への、変更可能な参照を返します。
代入式の左辺で value() を使用することで、キーの値を変更できます。
戻り値の型は QCborValueRef です。これは、QCborArray およびQCborMap のヘルパークラスです。QCborValueRef 型のオブジェクトを取得した場合、それをQCborValue への参照であるかのように使用できます。これに代入を行うと、その代入は、参照を取得したQCborArray またはQCborMap 内の要素に適用されます。
key() およびoperator*()も参照してください 。
QCborMap::Iterator::value_type Iterator::operator*() const
現在の項目のキーと、その値への変更可能な参照を含むペアを返します。
このペアの 2 番目の要素は、`QCborArray ` および `QCborMap` のヘルパークラスである `QCborValueRef` 型です。`QCborValueRef` 型のオブジェクトを取得すると、それを `QCborValue` への参照であるかのように使用できます。これに代入を行うと、その代入は、参照を取得した `QCborArray ` または `QCborMap ` 内の要素に対して適用されます。
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)
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 を返し、そうでない場合は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 を返します。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.