QVector、QList、QLinkedList 类 用法区别
来源:互联网 发布:手机绿色上网软件 编辑:程序博客网 时间:2024/06/08 19:24
QVector、Qlist、QlinkedList 类 用法比较:
1. QVector 是提供动态数组的一个模板类。
QList 是提供列表的一个模板类。
QLinkedList 是提供链表的一个模板类。
2. QVector<T> 是QT的一个通用容器类,它在相邻的内存位置中存储items的值,并且提供基于索引(index-based)的快速访问。
QList<T> 是QT的一个通用容器类,它存储列表的值,并基于索引访问(index-based),同时,它插入和删除元素比较快(constant time)。
QLinkedList<T> 是QT的一个通用容器类,它存储列表的值,并基于迭代器访问,同时,它插入和删除元素比较快(constant time)。
3. QList<T>, QLinkedList<T>, QVector<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足矣。
- QVector、QList、QLinkedList 类 用法区别
- QList、QLinkedList、QVector类
- QList类、QLinkedList类和QVector类
- Qt中的容器类 QList QLinkedList QVector
- QVector QList QLinkedList
- 循环容器(QVector,QLinkedList,QList)
- QT容器类(一) 之 QVector 、QLinkedList 和 QList
- Qt中的容器类 QList QLinkedList QVector..遍历及相关
- QT容器类(一) 之 QVector 、QLinkedList 和 QList
- [Qt] 循序容器(QVector、QLinkedList、QList...)
- Qt4 Gossip: 循序容器(QVector、QLinkedList、QList...) - 转
- Qt4 Gossip: 循序容器(QVector、QLinkedList、QList...) - 转
- QList、QVector、QMap容器类
- QList和QVector等容器的区别
- QLinkedList 类用法
- QList与QVector
- QList与QVector
- QList (链表) & QVector (数组)
- Java请求一个URL,获取返回的数据
- BZOJ3521 [Poi2014]Salad Bar
- IOS总结 静变量static、全局变量extern、局部变量、实例变量
- Oracle内存参数调优技术详解
- 用户栈和内核栈的区别
- QVector、QList、QLinkedList 类 用法区别
- 设计模式(20)------状态模式
- ASCII码字符对照表
- 区别是什么
- java接口调用安全策略
- 设计模式(21)------策略模式
- k8s1.4 新特性
- 应用程序无法正常启动(0x000007b)的不常见的解决过程
- hdu 5540/Secrete Master Plan