QList
QList是一种表示链表的模板类。QList<T> 是QT的通用容器之一。它以链表方式存储一组值,提供了一种基于索引的快速访问和基于索引的插入和删除操作。下面是使用它们的概述:
>QVector 应该是容器使用的第一选择。QVector<T>通常会提供比QList<T>更好的性能。QList<T>, QLinkedList<T>, and QVector<T> 提供了相似的API和功能。他们通常可以互换,但是会有性能上的差异,因为QVector<T>总是在内存中按照循序存储元素,而QList<T>是在堆中存储该容器内的元素的(注意:堆在内存中是不连续的内存区域)。
>然而,QList在Qt APIs中被用来传递参数和返回值,使用QList与这些API进行交互。
数组表示允许非常快速的插入和基于索引的访问。prepend() 和 append() 操作非常快的原因是因为QList已经在内部数组的两端预先分配了内存。
倒序遍历QList容器内元素
QList<QString> str;
QString temp;
QString a= "AbCdEfG";
for (int i = 0; i < 10; i++) {
temp = a+QString::number(i); //元素组合 QString + int
qDebug() << "set string is :"<<temp;
str.append(temp);
}
//倒序遍历内部元素
QList<QString>::reverse_iterator i;
for (i = str.rbegin(); i != str.rend();++i) {
qDebug() << " get String is "+(*i);
}