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:

QMetaSequence

このクラスは等価比較可能です。

パブリック関数

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

定数iteratorstep ステップ進める。step が負の場合、iterator はコンテナの先頭に向かって後退する。hasBidirectionalIterator() が偽を返した場合、step の負の値に対する動作は未定義である。

constBegin() およびconstEnd()も参照のこと

void QMetaContainer::advanceIterator(void *iterator, qsizetype step) const

nononstiteratorstep ステップ進める。step が負の場合、iterator はコンテナの先頭に向かって後方に移動する。hasBidirectionalIterator() が false を返す場合、step の負の値に対する動作は未定義。

begin() およびend()も参照

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

定数イテレータij が、イテレート先のコンテナ内で同じ値を指している場合はtrue を返し、そうでない場合はfalse を返す。

constBegin() およびconstEnd() も参照

bool QMetaContainer::compareIterator(const void *i, const void *j) const

非 const イテレータij が、反復処理中のコンテナ内で同じ値を指している場合はtrue を返し、そうでない場合はfalse を返す。

begin() およびend()も参照

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 を返します。

begin() およびend()も参照

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 イテレータij の間の距離(i - j に相当)を返します。ji よりもコンテナの末尾に近い場合、返される値は負となる。hasBidirectionalIterator() が偽を返した場合の動作は未定義。

constBegin() およびconstEnd()も参照

qsizetype QMetaContainer::diffIterator(const void *i, const void *j) const

非構成反復子ij の間の距離、i - j に相当する距離を返す。ji よりもコンテナの末尾に近い場合、返される値は負となる。hasBidirectionalIterator() が偽を返す場合、この場合の動作は未定義である。

begin() およびend()も参照

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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。