Iterator Class
class QCborMap::IteratorQCborMap::Iterator クラスは、QCborMap 用の STL スタイルの非 const イテレータを提供します。さらに...
- 継承メンバを含む全メンバのリスト
- IteratorはQtのCBOR Supportの一部です。
このクラスは強く比較可能です。
このクラスは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 の要素に適用されます。
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
を返し、そうでない場合は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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。