The QSequentialIterable class is an iterable interface for a container in a QVariant . 更多...
头: | #include <QSequentialIterable> |
qmake: | QT += core |
Since: | Qt 5.2 |
class | const_iterator |
QVariant | at (int idx ) const |
const_iterator | begin () const |
bool | canReverseIterate () const |
const_iterator | end () const |
int | size () const |
The QSequentialIterable class is an iterable interface for a container in a QVariant .
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 若它可以被转换成 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; } }
容器本身不会被拷贝,在遍历它之前。
另请参阅 QVariant .
Returns the element at position idx in the container.
返回 QSequentialIterable::const_iterator for the beginning of the container. This can be used in stl-style iteration.
另请参阅 end ().
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 for the end of the container. This can be used in stl-style iteration.
另请参阅 begin ().
Returns the number of elements in the container.