QVector 类使用「终于解决」

(21) 2023-03-26 16:39

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说QVector 类使用「终于解决」,希望能够帮助你!!!。
QVector 类使用「终于解决」_https://bianchenghao6.com/blog__第1张

         1. QVector 是提供动态数组的一个模板类。

         2. QVector<T> 是QT的一个通用容器类,它在相邻的内存位置中存储items的值,并且提供基于索引(index-based)的快速访问。

         3. QList<T>, QLinkedList<T>, and QVarLengthArray<T> 提供类似的功能,如下概况:

              ① 通常情况来说,QList是比较合适的选择,QList是基于索引访问(index-based)的API,它比QLinkedList {基于迭代器访问(iterator-based)的API}使用更加方便。

                  由于QList在内存中存储items的方式,它通常比QVector 更快(例如prepend()、insert()等)。而且,它只需更少的代码。

              ② 如果你需要使用一个真正的链表,并且保证使用迭代器(iterator)而不是索引(index)实现快速插入(constant time),可以使用QLinkedList。

              ③ 如果你需要items占据相邻内存空间,或者如果你的items比一个pointer更大并且你想要避免在插入时在堆上分配它们的话,可以使用QVector。

              ④ 如果你想要一个低级别的可变大小的数组,QVarLengthArray足矣。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复