Sur cette page

QMetaSequence::Iterable Class

class QMetaSequence::Iterable

La classe ` QMetaSequence::Iterable ` est une interface itérable pour un conteneur dans un ` QVariant`. En savoir plus...

Cette classe a été introduite dans Qt 6.11.

Types publics

Fonctions publiques

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

Description détaillée

Cette classe offre plusieurs méthodes permettant d’accéder aux valeurs d’un conteneur contenu dans un objet ` QVariant`. Une instance de ` QMetaSequence::Iterable ` peut être extraite d’un objet ` QVariant ` si celui-ci peut être converti en ` QVariantList`, ou si le conteneur qu’il contient est enregistré à l’aide de ` Q_DECLARE_SEQUENTIAL_CONTAINER_METATYPE`. La plupart des conteneurs séquentiels présents dans Qt XML, ainsi que certains de la bibliothèque standard C++, sont automatiquement enregistrés.

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

QVariant variant = QVariant::fromValue(intList);
if (variant.canConvert<QVariantList>()) {
    QMetaSequence::Iterable iterable = variant.value<QMetaSequence::Iterable>();
    // Possibilité d'utiliser la boucle « range-for » de C++11 :
    for (const QVariant&v: iterable) {
        qDebug() << v;
    }
    // Possibilité d'utiliser des itérateurs :
    QMetaSequence::Iterable::const_iteratorit = iterable.begin();
    const QMetaSequence::Iterable::const_iteratorend = iterable.end();
    for ( ; it != end;++it) {
        qDebug() << *it;
    }
}

Le conteneur lui-même n'est pas copié avant d'être parcouru.

Voir également QVariant.

Documentation sur les types de membres

[alias] Iterable::BidirectionalConstIterator

Expose un const_iterator à l'aide de std::bidirectional_iterator_tag.

[alias] Iterable::BidirectionalIterator

Expose un itérateur à l'aide de std::bidirectional_iterator_tag.

[alias] Iterable::ForwardConstIterator

Expose un const_iterator à l'aide de std::forward_iterator_tag.

[alias] Iterable::ForwardIterator

Expose un itérateur à l'aide de std::forward_iterator_tag.

[alias] Iterable::InputConstIterator

Expose un const_iterator à l'aide de std::input_iterator_tag.

[alias] Iterable::InputIterator

Expose un itérateur à l'aide de std::input_iterator_tag.

[alias] Iterable::RandomAccessConstIterator

Expose un const_iterator à l'aide de std::random_access_iterator_tag.

[alias] Iterable::RandomAccessIterator

Expose un itérateur à l'aide de std::random_access_iterator_tag.

Documentation des fonctions membres

QVariant Iterable::at(qsizetype idx) const

Renvoie la valeur située à l'idx e du conteneur.

Remarque : si le conteneur sous-jacent ne propose pas de moyen natif pour récupérer un élément à un index donné, cette méthode synthétisera l'accès à l'aide d'itérateurs. Ce comportement est déprécié et sera supprimé dans une future version de Qt.

Voir aussi setAt().

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

Définit l'élément situé à la position idx dans le conteneur sur value.

Voir également 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.