详细说明
QVector类是提供动态数组的模板类。
QVector是Qt的通用容器类之一。 将项目存储在相邻内存位置,并提供基于索引的快速访问。
QList、QLinkedList、QVector和QVarLengthArray提供类似的API和功能。 它们通常是可交换的,但会带来性能结果。 用例概述如下。
QVector应该是默认的优先事项。 QVector通常提供比QList更好的性能。 这是因为,QVector总是将其条目依次存储在存储器中,除非q列表是sizeof(t )=sizeof (void * )并且使用Q_DECLARE_TYPEINFO将t声明为q,否则
但是,整个Qt API使用QList传递参数和返回值。 使用q列表与这些API进行交互。
如果需要在列表中插入固定时间并使用迭代器而不是索引的真正链表,请使用QLinkedList。
注意: QVector和QVarLengthArray都保证c兼容的数组布局。 q列表中没有。 当APP应用程序需要与C API接口时,这可能很重要。
注:只要容器中仍存在引用的项,对QLinkedList的迭代器和对分配堆的QList的引用就有效。 对于将q列表分配给迭代器、QVector和非堆的引用,情况并非如此。
这是一个存储整数的q向量和一个存储QString值的q向量的示例。
q矢量