QMetaContainer Class
Die Klasse QMetaContainer bietet gemeinsame Funktionen für sequentielle und assoziative Container. Mehr...
Kopfzeile: | #include <QMetaContainer> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Seit: | Qt 6.0 |
Vererbt von: |
Diese Klasse ist gleichwertig-vergleichbar.
Öffentliche Funktionen
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 |
Dokumentation der Mitgliedsfunktionen
void QMetaContainer::advanceConstIterator(void *iterator, qsizetype step) const
Schiebt die Konstante iterator um step Schritte vor. Wenn step negativ ist, wird iterator nach hinten, zum Anfang des Containers, verschoben. Das Verhalten ist für negative Werte von step nicht spezifiziert, wenn hasBidirectionalIterator() false zurückgibt.
Siehe auch constBegin() und constEnd().
void QMetaContainer::advanceIterator(void *iterator, qsizetype step) const
Schiebt die Nicht-Konstante iterator um step Schritte vor. Wenn step negativ ist, wird iterator nach hinten, zum Anfang des Containers, verschoben. Das Verhalten ist für negative Werte von step nicht spezifiziert, wenn hasBidirectionalIterator() false zurückgibt.
void *QMetaContainer::begin(void *container) const
Erzeugt und gibt einen nicht-konstanten Iterator zurück, der auf den Anfang von container zeigt. Der Iterator wird mit new auf dem Heap alloziert. Er muss schließlich mit destroyIterator zerstört werden, um den Speicher zurückzugewinnen.
Gibt nullptr
zurück, wenn der Container keine nicht-konstanten Iteratoren anbietet.
Siehe auch end(), constBegin(), constEnd(), und destroyIterator().
bool QMetaContainer::canClear() const
Gibt true
zurück, wenn der Container geleert werden kann, andernfalls false
.
Siehe auch clear().
void QMetaContainer::clear(void *container) const
Löscht die angegebene container, wenn sie gelöscht werden kann.
Siehe auch canClear().
bool QMetaContainer::compareConstIterator(const void *i, const void *j) const
Gibt true
zurück, wenn die Konstanten-Iteratoren i und j auf denselben Wert in dem Container zeigen, über den sie iterieren, andernfalls wird false
zurückgegeben.
Siehe auch constBegin() und constEnd().
bool QMetaContainer::compareIterator(const void *i, const void *j) const
Gibt true
zurück, wenn die Nicht-Konst-Iteratoren i und j auf denselben Wert in dem Container zeigen, über den sie iterieren, andernfalls wird false
zurückgegeben.
void *QMetaContainer::constBegin(const void *container) const
Erzeugt und gibt einen konstanten Iterator zurück, der auf den Anfang von container zeigt. Der Iterator wird mit new auf dem Heap alloziert. Er muss schließlich mit destroyConstIterator zerstört werden, um den Speicher zurückzugewinnen.
Gibt nullptr
zurück, wenn der Container keine konstanten Iteratoren anbietet.
Siehe auch constEnd(), begin(), end(), und destroyConstIterator().
void *QMetaContainer::constEnd(const void *container) const
Erzeugt und gibt einen konstanten Iterator zurück, der auf das Ende von container zeigt. Der Iterator wird mit new auf dem Heap alloziert. Er muss schließlich mit destroyConstIterator zerstört werden, um den Speicher zurückzugewinnen.
Gibt nullptr
zurück, wenn der Container keine konstanten Iteratoren anbietet.
Siehe auch constBegin(), begin(), end(), und destroyConstIterator().
void QMetaContainer::copyConstIterator(void *target, const void *source) const
Kopiert den Konstanten-Iterator source in den Konstanten-Iterator target. Anschließend gibt compareConstIterator(Ziel, Quelle) true
zurück.
Siehe auch constBegin() und constEnd().
void QMetaContainer::copyIterator(void *target, const void *source) const
Kopiert den Nicht-Konst-Iterator source in den Nicht-Konst-Iterator target. Anschließend gibt compareIterator(Ziel, Quelle) true
zurück.
void QMetaContainer::destroyConstIterator(const void *iterator) const
Zerstört eine Konstante iterator, die zuvor mit constBegin() oder constEnd() erstellt wurde.
Siehe auch constBegin(), constEnd(), und destroyIterator().
void QMetaContainer::destroyIterator(const void *iterator) const
Zerstört eine nicht-konstante iterator, die zuvor mit begin() oder end() erstellt wurde.
Siehe auch begin(), end(), und destroyConstIterator().
qsizetype QMetaContainer::diffConstIterator(const void *i, const void *j) const
Liefert den Abstand zwischen den Konstanten Iteratoren i und j, das Äquivalent von i -
j . Wenn j näher am Ende des Containers liegt als i, ist der zurückgegebene Wert negativ. Das Verhalten ist in diesem Fall nicht spezifiziert, wenn hasBidirectionalIterator() false zurückgibt.
Siehe auch constBegin() und constEnd().
qsizetype QMetaContainer::diffIterator(const void *i, const void *j) const
Liefert den Abstand zwischen den Nicht-Konst-Iteratoren i und j, dem Äquivalent von i -
j . Wenn j näher am Ende des Containers liegt als i, ist der zurückgegebene Wert negativ. Das Verhalten ist in diesem Fall nicht spezifiziert, wenn hasBidirectionalIterator() false zurückgibt.
void *QMetaContainer::end(void *container) const
Erzeugt einen Nicht-Konst-Iterator, der auf das Ende von container zeigt, und gibt ihn zurück. Der Iterator wird mit new auf dem Heap alloziert. Er muss schließlich mit destroyIterator zerstört werden, um den Speicher zurückzugewinnen.
Gibt nullptr
zurück, wenn der Container keine nicht-konstanten Iteratoren anbietet.
Siehe auch hasIterator(), end(), constBegin(), constEnd(), und destroyIterator().
bool QMetaContainer::hasBidirectionalIterator() const
Gibt true
zurück, wenn der zugrunde liegende Container einen bidirektionalen Iterator oder einen Iterator mit wahlfreiem Zugriff gemäß der Definition von std::bidirectional_iterator_tag bzw. std::random_access_iterator_tag bietet. Andernfalls wird false
zurückgegeben.
QMetaSequence geht davon aus, dass const- und non-const-Iteratoren für denselben Container dieselben Iterator-Eigenschaften haben.
bool QMetaContainer::hasConstIterator() const
Gibt true
zurück, wenn der zugrunde liegende Container einen konstanten Iterator bietet, andernfalls false
.
Siehe auch constBegin(), constEnd(), destroyConstIterator(), compareConstIterator(), diffConstIterator(), advanceConstIterator(), und copyConstIterator().
bool QMetaContainer::hasForwardIterator() const
Gibt true
zurück, wenn der zugrunde liegende Container mindestens einen Vorwärts-Iterator gemäß der Definition von std::forward_iterator_tag bereitstellt, andernfalls false
. Bidirektionale Iteratoren und Iteratoren mit wahlfreiem Zugriff sind Spezialisierungen von Vorwärts-Iteratoren. Diese Methode gibt auch true
zurück, wenn der Container einen dieser Iteratoren bereitstellt.
QMetaSequence geht davon aus, dass konstante und nicht-konstante Iteratoren für denselben Container dieselben Iterator-Eigenschaften haben.
bool QMetaContainer::hasInputIterator() const
Gibt true
zurück, wenn der zugrundeliegende Container mindestens einen Input-Iterator im Sinne von std::input_iterator_tag bereitstellt, andernfalls false
. Vorwärts-Iteratoren, bidirektionale Iteratoren und Iteratoren mit wahlfreiem Zugriff sind Spezialisierungen von input-Iteratoren. Diese Methode gibt auch true
zurück, wenn der Container einen dieser Iteratoren bereitstellt.
QMetaSequence geht davon aus, dass konstante und nicht-konstante Iteratoren für denselben Container dieselben Iterator-Eigenschaften haben.
bool QMetaContainer::hasIterator() const
Gibt true
zurück, wenn der zugrunde liegende Container einen Nicht-Konst-Iterator anbietet, andernfalls false
.
Siehe auch begin(), end(), destroyIterator(), compareIterator(), diffIterator(), advanceIterator(), und copyIterator().
bool QMetaContainer::hasRandomAccessIterator() const
Gibt true
zurück, wenn der zugrunde liegende Container einen Iterator mit wahlfreiem Zugriff gemäß der Definition von std::random_access_iterator_tag bereitstellt, andernfalls false
.
QMetaSequence geht davon aus, dass Konst- und Nicht-Konst-Iteratoren für denselben Container dieselben Iterator-Eigenschaften haben.
bool QMetaContainer::hasSize() const
Gibt true
zurück, wenn der Container nach seiner Größe abgefragt werden kann, andernfalls false
.
Siehe auch size().
qsizetype QMetaContainer::size(const void *container) const
Gibt die Anzahl der Werte im angegebenen container zurück, wenn dessen Größe abgefragt werden kann. Andernfalls wird -1
zurückgegeben.
Siehe auch 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.