QIterator Struct
template <typename Container> struct QIteratorQIterator は、QVariant 内のコンテナを反復処理できるようにするテンプレートクラスです。詳細...
| ヘッダー: | #include <QIterator> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| 以下のように: | Qt 6.0 |
| 継承元: | QBaseIterator |
| 継承元: | QMetaAssociation::Iterable::Iterator およびQMetaSequence::Iterable::Iterator |
パブリック関数
| QIterator(QIterable<Container> *iterable, void *iterator) | |
| bool | operator!=(const QIterator<Container> &other) const |
| QIterator<Container> | operator+(qsizetype j) const |
| QIterator<Container> & | operator++() |
| QIterator<Container> | operator++(int) |
| QIterator<Container> & | operator+=(qsizetype j) |
| QIterator<Container> | operator-(qsizetype j) const |
| qsizetype | operator-(const QIterator<Container> &j) const |
| QIterator<Container> & | operator--() |
| QIterator<Container> | operator--(int) |
| QIterator<Container> & | operator-=(qsizetype j) |
| bool | operator==(const QIterator<Container> &other) const |
関連する非メンバー
| QIterator<Container> | operator+(qsizetype j, const QIterator<Container> &k) |
詳細な説明
QIterator<Container> は、コンテナに対する可変反復処理を提供します。ここで、Container は、コンテナの反復処理機能を定義するメタ型記述子(QMetaSequence またはQMetaAssociation )です。
QIterator はQIterable のインスタンスによってのみ作成でき、他の STL スタイルのイテレータと同様の方法で使用できます。一般的に、QIterator は直接使用するのではなく、QMetaSequence::Iterable およびQMetaAssociation::Iterable によって提供される派生クラスを通じて使用すべきです。
QIterableも参照してください 。
メンバ関数のドキュメント
[explicit] QIterator::QIterator(QIterable<Container> *iterable, void *iterator)
iterable と、ネイティブの `iterator` へのポインタから、イテレータを作成します。
bool QIterator::operator!=(const QIterator<Container> &other) const
other がこのイテレータとは異なる項目を指している場合はtrue を返し、そうでない場合はfalse を返します。
operator==()も参照してください 。
QIterator<Container> QIterator::operator+(qsizetype j) const
このイテレータからj の位置先にある項目へのイテレータを返します。
operator-() およびoperator+=()も参照してください 。
QIterator<Container> &QIterator::operator++()
++ 演算子(++it )は、イテレータをコンテナ内の次の要素に進め、新しい現在の要素へのイテレータを返します。
QMetaSequence::Iterable::constEnd() でこの関数を呼び出すと、未定義の結果となります。
operator--()も参照してください 。
QIterator<Container> QIterator::operator++(int)
後置演算子 `++ ` (it++) は、イテレータをコンテナ内の次の要素に進め、直前の要素へのイテレータを返します。
これはオーバーロードされた関数です。
QIterator<Container> &QIterator::operator+=(qsizetype j)
イテレータをj 個分進めます。
operator-=() およびoperator+()も参照してください 。
QIterator<Container> QIterator::operator-(qsizetype j) const
このイテレータからj の位置だけ後ろにある項目へのイテレータを返します。
QVariant で指定されたコンテナが双方向の反復処理をサポートしていない場合、この関数を呼び出すと未定義の結果となります。
operator+()、operator-=()、およびQIterable::canReverseIterate()も参照してください 。
qsizetype QIterator::operator-(const QIterator<Container> &j) const
2つのイテレータ間の距離を返します。
これはオーバーロードされた関数です。
operator+()、operator-=()、およびQIterable::canReverseIterate()も参照してください 。
QIterator<Container> &QIterator::operator--()
接頭辞-- 演算子(--it )は、その直前の要素を現在の要素として設定し、新しい現在の要素へのイテレータを返します。
QMetaSequence::Iterable::constBegin() に対してこの関数を呼び出すと、未定義の結果となります。
QVariant 内のコンテナが双方向の反復処理をサポートしていない場合、この関数を呼び出すと未定義の結果となります。
operator++() およびQIterable::canReverseIterate()も参照してください 。
QIterator<Container> QIterator::operator--(int)
ポストフィックス演算子 `-- `(it-- )は、直前の要素を現在の要素とし、直前に現在の要素だった要素へのイテレータを返します。
QVariant 内のコンテナが双方向反復をサポートしていない場合、この関数を呼び出すと未定義の結果となります。
これはオーバーロードされた関数です。
QIterable::canReverseIterate()も参照してください 。
QIterator<Container> &QIterator::operator-=(qsizetype j)
イテレータをj 個分戻します。
QVariant 内のコンテナが双方向反復をサポートしていない場合、この関数を呼び出すと、未定義の結果が生じます。
operator+=()、operator-()、およびQIterable::canReverseIterate()も参照してください 。
bool QIterator::operator==(const QIterator<Container> &other) const
other がこのイテレータと同じ項目を指している場合はtrue を返し、そうでない場合はfalse を返します。
operator!=()も参照してください 。
© 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.