Sur cette page

QMetaAssociation::Iterable Class

class QMetaAssociation::Iterable

QMetaAssociation::Iterable est une interface itérable pour un conteneur associatif dans un site QVariant. Plus....

Cette classe a été introduite dans Qt 6.11.

Types publics

Fonctions publiques

bool containsKey(const QVariant &key) const
QMetaAssociation::Iterable::ConstIterator find(const QVariant &key) const
void insertKey(const QVariant &key)
QMetaAssociation::Iterable::Iterator mutableFind(const QVariant &key)
void removeKey(const QVariant &key)
void setValue(const QVariant &key, const QVariant &mapped)
QVariant value(const QVariant &key) const

Description détaillée

Cette classe permet plusieurs méthodes d'accès aux éléments d'un conteneur associatif contenu dans un QVariant. Une instance de QMetaAssociation::Iterable peut être extraite d'un QVariant s'il peut être converti en QVariantHash ou QVariantMap ou si une vue mutable personnalisée a été enregistrée.

QHash<int, QString> mapping ; mapping.insert(7, "Seven") ; mapping.insert(11, "Eleven") ; mapping.insert(42, "Forty-two") ;QVariant variant = QVariant::fromValue(mapping) ;if (variant.canConvert<QVariantHash>()) { QMetaAssociation::Iterable iterable = variant.value<QMetaAssociation::Iterable>() ; // On peut utiliser C++11 range-for sur les valeurs : for(const QVariant &v: iterable) {        qDebug() << v;
    } // On peut utiliser des itérateurs: QMetaAssociation::Iterable::const_iterator it = iterable.begin() ; const QMetaAssociation::Iterable::const_iterator end = iterable.end() ; for ( ; it != end ; ++it) {        qDebug() << *it; // The current value
        qDebug() << it.key();
        qDebug() << it.value();
    } }

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 utilisant std::bidirectional_iterator_tag.

[alias] Iterable::BidirectionalIterator

Expose un itérateur utilisant std::bidirectional_iterator_tag.

[alias] Iterable::ForwardConstIterator

Expose un const_iterator utilisant std::forward_iterator_tag.

[alias] Iterable::ForwardIterator

Expose un itérateur utilisant std::forward_iterator_tag.

[alias] Iterable::InputConstIterator

Expose un const_iterator utilisant std::input_iterator_tag.

[alias] Iterable::InputIterator

Expose un itérateur utilisant std::input_iterator_tag.

[alias] Iterable::RandomAccessConstIterator

Expose un const_iterator utilisant std::random_access_iterator_tag.

[alias] Iterable::RandomAccessIterator

Expose un itérateur utilisant std::random_access_iterator_tag.

Documentation des fonctions membres

bool Iterable::containsKey(const QVariant &key) const

Retourne true si le conteneur a une entrée avec le type donné key, ou false sinon. Si key n'est pas convertible dans le type attendu, false est renvoyé.

QMetaAssociation::Iterable::ConstIterator Iterable::find(const QVariant &key) const

Récupère un ConstIterator pointant vers l'élément à l'adresse key donnée, ou la fin du conteneur si cette clé n'existe pas. Si l'adresse key n'est pas convertible dans le type attendu, la fin du conteneur est renvoyée.

void Iterable::insertKey(const QVariant &key)

Insère une nouvelle entrée avec l'adresse key, ou réinitialise la valeur mappée de toute entrée existante avec l'adresse key à la valeur mappée construite par défaut. L'adresse key est contrainte au type attendu : S'il n'est pas convertible, une valeur par défaut est insérée.

QMetaAssociation::Iterable::Iterator Iterable::mutableFind(const QVariant &key)

Récupère un itérateur pointant vers l'élément à l'adresse key, ou vers la fin du conteneur si cette clé n'existe pas. Si l'adresse key n'est pas convertible dans le type attendu, la fin du conteneur est renvoyée.

void Iterable::removeKey(const QVariant &key)

Supprime du conteneur l'entrée correspondant à l'adresse key. L'adresse key est convertie au type attendu : S'il n'est pas convertible, la valeur par défaut est supprimée.

void Iterable::setValue(const QVariant &key, const QVariant &mapped)

Définit la valeur mappée associée à key en mapped, si possible. Insère une nouvelle entrée, s'il n'en existe pas encore, pour la valeur key donnée. Si key n'est pas convertible en type de clé, la valeur du type de clé construit par défaut est remplacée.

Voir aussi value().

QVariant Iterable::value(const QVariant &key) const

Récupère la valeur mappée à l'adresse key donnée, ou une adresse QVariant d'une instance construite par défaut du type mappé, si la clé n'existe pas. Si key n'est pas convertible en type de clé, la valeur mappée associée à la clé construite par défaut est renvoyée.

Voir également setValue().

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