QMetaContainer Class
QMetaContainerクラスは、シーケンシャル・コンテナとアソシアティブ・コンテナに共通の機能を提供します。詳細...
Header: | #include <QMetaContainer> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Since: | Qt 6.0 |
Inherited By: |
このクラスは等価比較可能です。
パブリック関数
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
定数iterator をstep ステップ進める。step が負の場合、iterator はコンテナの先頭に向かって後退する。hasBidirectionalIterator() が偽を返した場合、step の負の値に対する動作は未定義である。
constBegin() およびconstEnd()も参照のこと 。
void QMetaContainer::advanceIterator(void *iterator, qsizetype step) const
nononstiterator をstep ステップ進める。step が負の場合、iterator はコンテナの先頭に向かって後方に移動する。hasBidirectionalIterator() が false を返す場合、step の負の値に対する動作は未定義。
void *QMetaContainer::begin(void *container) const
container の先頭を指すnon-constイテレータを作成し、返す。 イテレータは、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
非 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
非 const イテレータsource を非 const イテレータtarget にコピーします。その後、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 同じコンテナの const および nononst イテレータが同じイテレータ特性を持つことを仮定する。
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 イテレータと non-const イテレータが同じイテレータ特性を持つことを想定しています。
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 および nononst イテレータが同じイテレータ特性を持つことを仮定する。
bool QMetaContainer::hasSize() const
コンテナのサイズを問い合わせ可能な場合はtrue
を返し、そうでない場合はfalse
を返す。
size()も参照 。
qsizetype QMetaContainer::size(const void *container) const
与えられたcontainer のサイズを問い合わせることができる場合、その中の値の数を返します。そうでない場合は-1
を返します。
hasSize()も参照して ください。
©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。