Auf dieser Seite

QMetaSequence::Iterable Class

class QMetaSequence::Iterable

Die Klasse „ QMetaSequence::Iterable “ ist eine iterierbare Schnittstelle für einen Container in einer „ QVariant “. Mehr...

Diese Klasse wurde in Qt 6.11 eingeführt.

Öffentliche Typen

Öffentliche Funktionen

QVariant at(qsizetype idx) const
void setAt(qsizetype idx, const QVariant &value)

Ausführliche Beschreibung

Diese Klasse bietet verschiedene Methoden für den Zugriff auf die Werte eines Containers, der in einem „ QVariant “ enthalten ist. Eine Instanz von „ QMetaSequence::Iterable “ kann aus einem „ QVariant “ extrahiert werden, wenn dieser in einen „ QVariantList “ konvertiert werden kann oder wenn der darin enthaltene Container über „ Q_DECLARE_SEQUENTIAL_CONTAINER_METATYPE “ registriert wurde. Die meisten sequenziellen Container in Qt XML und einige in der C++-Standardbibliothek werden automatisch registriert.

QList<int> intList = {7, 11, 42};

QVariant variant = QVariant::fromValue(intList);
if (variant.canConvert<QVariantList>()) {
    QMetaSequence::Iterable iterable = variant.value<QMetaSequence::Iterable>();
    // Es kann die C++11-Range-for-Schleife verwendet werden:
    for (const QVariant&v: iterable) {
        qDebug() << v;
    }
    // Es können Iteratoren verwendet werden:
    QMetaSequence::Iterable::const_iteratorit = iterable.begin();
    const QMetaSequence::Iterable::const_iteratorend = iterable.end();
    for ( ; it != end;++it) {
        qDebug() << *it;
    }
}

Der Container selbst wird vor der Iteration nicht kopiert.

Siehe auch QVariant.

Dokumentation zu Mitgliedstypen

[alias] Iterable::BidirectionalConstIterator

Stellt einen const_iterator mithilfe von std::bidirectional_iterator_tag bereit.

[alias] Iterable::BidirectionalIterator

Stellt einen Iterator mithilfe von `std::bidirectional_iterator_tag` bereit.

[alias] Iterable::ForwardConstIterator

Stellt einen const_iterator mithilfe von std::forward_iterator_tag bereit.

[alias] Iterable::ForwardIterator

Stellt einen Iterator mithilfe von std::forward_iterator_tag bereit.

[alias] Iterable::InputConstIterator

Stellt einen const_iterator mithilfe von std::input_iterator_tag bereit.

[alias] Iterable::InputIterator

Stellt einen Iterator mithilfe von std::input_iterator_tag bereit.

[alias] Iterable::RandomAccessConstIterator

Stellt einen const_iterator mithilfe von std::random_access_iterator_tag bereit.

[alias] Iterable::RandomAccessIterator

Stellt einen Iterator mithilfe von std::random_access_iterator_tag bereit.

Dokumentation zu den Mitgliedsfunktionen

QVariant Iterable::at(qsizetype idx) const

Gibt den Wert an der Position idx im Container zurück.

Hinweis: Wenn der zugrunde liegende Container keine native Möglichkeit bietet, ein Element anhand eines Index abzurufen, synthetisiert diese Methode den Zugriff mithilfe von Iteratoren. Dieses Verhalten ist veraltet und wird in einer zukünftigen Version von Qt entfernt.

Siehe auch setAt().

void Iterable::setAt(qsizetype idx, const QVariant &value)

Setzt das Element an der Position idx im Container auf value.

Siehe auch at().

© 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.