Qt容器与迭代器课件.ppt

上传人:牧羊曲112 文档编号:1287789 上传时间:2022-11-04 格式:PPT 页数:13 大小:309.99KB
返回 下载 相关 举报
Qt容器与迭代器课件.ppt_第1页
第1页 / 共13页
Qt容器与迭代器课件.ppt_第2页
第2页 / 共13页
Qt容器与迭代器课件.ppt_第3页
第3页 / 共13页
Qt容器与迭代器课件.ppt_第4页
第4页 / 共13页
Qt容器与迭代器课件.ppt_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《Qt容器与迭代器课件.ppt》由会员分享,可在线阅读,更多相关《Qt容器与迭代器课件.ppt(13页珍藏版)》请在三一办公上搜索。

1、Qt容器,两个大类:容器元素是一个值的,比如QVector,以及容器元素是一个(key, value)对的,比如QMapQStringList: join(),filter()QLinkedList:固定的时间内完成元素的插入/删除操作QMap: 元素有序排列QHash:能够快速地依据key定位某个元素,Qt容器两个大类:容器元素是一个值的,比如QVector,以,QTL容器的迭代器,STL风格的Java 风格的,QTL容器的迭代器 STL风格的,关键字foreach,关键字foreach,通用算法,qSort 使用快速排序算法,将一个元素序列排成升序。qStableSort也能完成类似的排序

2、操作,但是能够确保值相等的元素在排序前后相对顺序不变通用算法qBinaryFind使用二分搜索算法qFill将一个元素序列中的每个元素设置为一个相同的值。qCopy按照从前向后的顺序将一个元素序列复制到所在容器的其他位置或者另外一个容器中。qCopyBackward完成类似的操作,但是按照从后向前的顺序。qDeleteAll调用C+运算符delete,析构容器中的元素。,通用算法qSort 使用快速排序算法,将一个元素序列排成升序,函子,回调函数(callback function)void qsort(void *base, size_t num, size_t width, int (*c

3、ompare )(const void *, const void *) ); 部分通用算法也需要使用类似的机制。例如,通用算法 void qSort ( RandomAccessIterator begin, RandomAccessIterator end, LessThan lessThan ) 容器元素的类型是由模板参数指定的,因而是不确定的,而普通函数只能够处理确定类型的数据使用类模板而不是类来完成这个任务。,函子回调函数(callback function),Qt容器与迭代器课件,类型分类技术在QList中的应用,QList并没有使用数据结构课程中的单向链表或者双向链表来存储容器元

4、素。依据容器元素类型的不同,它采用不同的数据结构来处理,以达到节省内存、提高处理速度的目的。容器元素的类型被表示为Qlist的模板参数T。为了获取T的具体信息,QList用到了3.3节阐述的类型分类技术。如果T占用的内存较多,QList将每个容器元素存放在堆中,再维护一个指针数组如果T是一个指针类型,或者它所占字节数小于指针所占字节数(比如T为char),我们可以将T直接存放在指针数组中以节省内存,类型分类技术在QList中的应用 QList并没有使用数据结,在容器的首、尾删除或者插入元素时,可能并不需要调用memmove函数,而只是对begin或者end做简单的修改即可,在容器的首、尾删除或者插入元素时,可能并不,Qt容器与迭代器课件,QListData中指针数组的每个元素被表示为类Node,QListData中指针数组的每个元素被表示为类Node,Qt容器与迭代器课件,Qt容器与迭代器课件,Qt容器与迭代器课件,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号