On this page
QSequentialIterable Class
The QSequentialIterable class is an iterable interface for a container in a QVariant. More...
Header: | #include <QSequentialIterable> |
qmake: | QT += core |
Since: | Qt 5.2 |
This class was introduced in Qt 5.2.
Public Types
Public Functions
QVariant | at(int idx) const |
QSequentialIterable::const_iterator | begin() const |
bool | canReverseIterate() const |
QSequentialIterable::const_iterator | end() const |
int | size() const |
Detailed Description
This class allows several methods of accessing the elements of a container held within a QVariant. An instance of QSequentialIterable can be extracted from a QVariant if it can be converted to a QVariantList.
QList<int> intList = {7, 11, 42};
QVariant variant = QVariant::fromValue(intList);
if (variant.canConvert<QVariantList>()) {
QSequentialIterable iterable = variant.value<QSequentialIterable>();
// Can use foreach:
foreach (const QVariant &v, iterable) {
qDebug() << v;
}
// Can use C++11 range-for:
for (const QVariant &v : iterable) {
qDebug() << v;
}
// Can use iterators:
QSequentialIterable::const_iterator it = iterable.begin();
const QSequentialIterable::const_iterator end = iterable.end();
for ( ; it != end; ++it) {
qDebug() << *it;
}
}
The container itself is not copied before iterating over it.
See also QVariant.
Member Function Documentation
QVariant QSequentialIterable::at(int idx) const
Returns the element at position idx in the container.
QSequentialIterable::const_iterator QSequentialIterable::begin() const
Returns a QSequentialIterable::const_iterator for the beginning of the container. This can be used in stl-style iteration.
See also end().
bool QSequentialIterable::canReverseIterate() const
Returns whether it is possible to iterate over the container in reverse. This corresponds to the std::bidirectional_iterator_tag iterator trait of the const_iterator of the container.
QSequentialIterable::const_iterator QSequentialIterable::end() const
Returns a QSequentialIterable::const_iterator for the end of the container. This can be used in stl-style iteration.
See also begin().
int QSequentialIterable::size() const
Returns the number of elements in the container.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qsequentialiterable.html