const_iterator Struct

struct QAssociativeIterable::const_iterator

The QAssociativeIterable::const_iterator allows iteration over a container in a QVariant. More...

This struct was introduced in Qt 5.2.

Detailed Description

A QAssociativeIterable::const_iterator can only be created by a QAssociativeIterable instance, and can be used in a way similar to other stl-style iterators.

 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>()) {
     QAssociativeIterable iterable = variant.value<QAssociativeIterable>();
     // Can use foreach over the values:
     foreach (const QVariant &v, iterable) {
         qDebug() << v;
     }
     // Can use C++11 range-for over the values:
     for (const QVariant &v : iterable) {
         qDebug() << v;
     }
     // Can use iterators:
     QAssociativeIterable::const_iterator it = iterable.begin();
     const QAssociativeIterable::const_iterator end = iterable.end();
     for ( ; it != end; ++it) {
         qDebug() << *it; // The current value
         qDebug() << it.key();
         qDebug() << it.value();
     }
 }

See also QAssociativeIterable.