QMetaContainer Class
QMetaContainerクラスは、シーケンシャル・コンテナとアソシアティブ・コンテナに共通の機能を提供します。詳細...
ヘッダ | #include <QMetaContainer> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
以来: | Qt 6.0 |
継承元: |
このクラスは等価比較可能です。
パブリック関数
void | advanceConstIterator(void *iterator, qsizetype step) const |
void | advanceIterator(void *iterator, qsizetype step) const |
void * | begin(void *container) const |
bool | canClear() const |
void | clear(void *container) const |
bool | compareConstIterator(const void *i, const void *j) const |
bool | compareIterator(const void *i, const void *j) const |
void * | constBegin(const void *container) const |
void * | constEnd(const void *container) const |
void | copyConstIterator(void *target, const void *source) const |
void | copyIterator(void *target, const void *source) const |
void | destroyConstIterator(const void *iterator) const |
void | destroyIterator(const void *iterator) const |
qsizetype | diffConstIterator(const void *i, const void *j) const |
qsizetype | diffIterator(const void *i, const void *j) const |
void * | end(void *container) const |
bool | hasBidirectionalIterator() const |
bool | hasConstIterator() const |
bool | hasForwardIterator() const |
bool | hasInputIterator() const |
bool | hasIterator() const |
bool | hasRandomAccessIterator() const |
bool | hasSize() const |
qsizetype | size(const void *container) const |
メンバ関数ドキュメント
void QMetaContainer::advanceConstIterator(void *iterator, qsizetype step) const
constiterator をstep ステップ進める。step が負の場合、iterator はコンテナの先頭に向かって後方に移動する。hasBidirectionalIterator() が偽を返した場合、step の負の値に対する動作は指定されない。
constBegin() およびconstEnd()も参照のこと 。
void QMetaContainer::advanceIterator(void *iterator, qsizetype step) const
nononstiterator をstep ステップ進める。step が負の場合、iterator はコンテナの先頭に向かって後方に移動する。hasBidirectionalIterator() が偽を返した場合、step の負の値に対する動作は指定されない。
void *QMetaContainer::begin(void *container) const
container 。イテレータはnewを使ってヒープ上に確保される。最終的には、destroyIterator を使用して破棄し、メモリを再利用する必要があります。
コンテナが非構造イテレータを提供していない場合はnullptr
を返す。
end()、constBegin()、constEnd()、destroyIterator()も参照 。
bool QMetaContainer::canClear() const
コンテナをクリアできる場合はtrue
を返し、そうでない場合はfalse
を返す。
clear()も参照のこと 。
void QMetaContainer::clear(void *container) const
与えられたcontainer がクリア可能なら、それをクリアする。
canClear()も参照 。
bool QMetaContainer::compareConstIterator(const void *i, const void *j) const
定数イテレータi とj が、イテレート先のコンテナ内で同じ値を指している場合はtrue
を返し、そうでない場合はfalse
を返す。
constBegin() およびconstEnd()も参照 。
bool QMetaContainer::compareIterator(const void *i, const void *j) const
非定数イテレータi とj が、イテレート先のコンテナ内で同じ値を指している場合はtrue
を返し、そうでない場合はfalse
を返す。
void *QMetaContainer::constBegin(const void *container) const
container の先頭を指す const イテレータを作成し、返す。 イテレータは new を使ってヒープ上に確保される。最終的には、destroyConstIterator を使用して破棄し、メモリを再利用する必要があります。
コンテナが const イテレータを提供していない場合は、nullptr
を返します。
constEnd()、begin()、end()、destroyConstIterator()も参照 。
void *QMetaContainer::constEnd(const void *container) const
container 。イテレータはnewを使ってヒープ上に確保される。最終的には、destroyConstIterator を使用して破棄し、メモリを再利用する必要があります。
コンテナが const イテレータを提供していない場合はnullptr
を返します。
constBegin()、begin()、end()、destroyConstIterator()も参照 。
void QMetaContainer::copyConstIterator(void *target, const void *source) const
const イテレータsource を const イテレータtarget にコピーします。その後、compareConstIterator(target, source) はtrue
を返します。
constBegin() およびconstEnd()も参照してください 。
void QMetaContainer::copyIterator(void *target, const void *source) const
nononst iteratorsource を nononst iteratortarget にコピーする。その後、compareIterator(target, source) はtrue
を返す。
void QMetaContainer::destroyConstIterator(const void *iterator) const
constBegin() またはconstEnd() を使用して作成された constiterator を破棄する。
constBegin()、constEnd() およびdestroyIterator()も参照 。
void QMetaContainer::destroyIterator(const void *iterator) const
以前にbegin() またはend() を使用して作成された nononstiterator を破棄する。
begin()、end()、destroyConstIterator()も参照 。
qsizetype QMetaContainer::diffConstIterator(const void *i, const void *j) const
const イテレータi とj の距離、i -
j に相当する距離を返す。j がi よりもコンテナの末尾に近い場合、返される値は負となる。hasBidirectionalIterator() が偽を返した場合の動作は未定義。
constBegin() およびconstEnd()も参照 。
qsizetype QMetaContainer::diffIterator(const void *i, const void *j) const
非構造反復子i とj の間の距離、i -
j に相当する距離を返す。j がi よりもコンテナの末尾に近い場合、返される値は負となる。hasBidirectionalIterator() が偽を返す場合、この場合の動作は未定義である。
void *QMetaContainer::end(void *container) const
container 。イテレータはnewを使ってヒープ上に確保される。最終的には、destroyIterator を使用して破棄し、メモリを再利用する必要があります。
コンテナが非構造イテレータを提供していない場合はnullptr
を返します。
hasIterator(), end(),constBegin(),constEnd(),destroyIterator()も参照 。
bool QMetaContainer::hasBidirectionalIterator() const
基礎となるコンテナが、std::bidirectional_iterator_tag および std::random_access_iterator_tag でそれぞれ定義される双方向イテレータまたはランダムアクセスイテレータを提供する場合、true
を返す。それ以外の場合はfalse
を返します。
QMetaSequence は、同じコンテナの定数イテレータと非定数イテレータが同じイテレータ特性を持つことを仮定しています。
bool QMetaContainer::hasConstIterator() const
基礎となるコンテナが const イテレータを提供している場合はtrue
を返し、そうでない場合はfalse
を返します。
constBegin(),constEnd(),destroyConstIterator(),compareConstIterator(),diffConstIterator(),advanceConstIterator(),copyConstIterator()も参照 。
bool QMetaContainer::hasForwardIterator() const
基礎となるコンテナが、std::forward_iterator_tag で定義された順方向イテレータを少なくとも提供していればtrue
を返し、そうでなければfalse
を返します。双方向イテレータとランダムアクセス・イテレータは、順方向イテレータの特殊化です。このメソッドは、コンテナがそれらのいずれかを提供している場合にもtrue
を返します。
QMetaSequence は、同じコンテナの const イテレータと nononst イテレータが同じイテレータ特性を持つことを想定しています。
bool QMetaContainer::hasInputIterator() const
基礎となるコンテナが、少なくとも std::input_iterator_tag で定義された入力イテレータを提供していればtrue
を返し、そうでなければfalse
を返す。順方向イテレータ、双方向イテレータ、ランダムアクセスイテレータは、入力イテレータの特殊化です。このメソッドは、コンテナがこれらのイテレータを提供している場合、true
を返します。
QMetaSequence は、同じコンテナの const イテレータと non-const イテレータが同じイテレータ特性を持つことを想定しています。
bool QMetaContainer::hasIterator() const
基礎となるコンテナが nononst イテレータを提供している場合はtrue
を返し、そうでない場合はfalse
を返す。
begin(),end(),destroyIterator(),compareIterator(),diffIterator(),advanceIterator(),copyIterator()も参照 。
bool QMetaContainer::hasRandomAccessIterator() const
基礎となるコンテナが std::random_access_iterator_tag で定義されたランダムアクセスイテレータを提供している場合はtrue
を返し、そうでない場合はfalse
を返します。
QMetaSequence 同じコンテナの const イテレータと non-const イテレータが同じイテレータ特性を持つことを想定しています。
bool QMetaContainer::hasSize() const
コンテナのサイズを問い合わせられる場合はtrue
を返し、そうでない場合はfalse
を返す。
size()も参照 。
qsizetype QMetaContainer::size(const void *container) const
指定されたcontainer に含まれる値の数を返します。そうでない場合は-1
を返す。
hasSize()も参照 。
© 2025 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.