项目中STL的使用.ppt

上传人:sccc 文档编号:5775181 上传时间:2023-08-18 格式:PPT 页数:21 大小:726.08KB
返回 下载 相关 举报
项目中STL的使用.ppt_第1页
第1页 / 共21页
项目中STL的使用.ppt_第2页
第2页 / 共21页
项目中STL的使用.ppt_第3页
第3页 / 共21页
项目中STL的使用.ppt_第4页
第4页 / 共21页
项目中STL的使用.ppt_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《项目中STL的使用.ppt》由会员分享,可在线阅读,更多相关《项目中STL的使用.ppt(21页珍藏版)》请在三一办公上搜索。

1、C+项目中STL的使用,Click to add Title,4个点/天*5天,如何自动分组,算法?,界面,逻辑?,自动分组结果,输入-排序-输出(传统实现),无循环,输入-排序-输出(STL实现),STL:Standard Template Library。常用数据结构与算法的集合。1998年,STL成为C+标准库的一部分。,STL是什么,Alexander Stepanov(STL之父),70年代,思想1987,继承1998,标准现在,泛型,msvcr80.dllmsvcp80.dllmfc80u.dll,STL的历史及实现版本,顺序容器,1,关联容器,2,1)vector:动态增长数组。

2、,2)list:双向链表。,3)deque:类似vector,两端增删效率高,1)set 键集合。,黑名单,2)map 键值对集合。,英文词典,建议1:用vector代替传统数组!,适配器容器,3,1)queue,stack,priority_queue 用别的容器适配而成。,查找快,STL容器,容器比较,初始化,1,插入与删除,2,大小与位置,3,遍历,4,容器常用操作,set与map,1,list,2,c.remove(val)/移除所有值为val的元素c.unique()/移除重复元素c.sort()/排序c.reverse();/将元素反序,容器特殊操作,1.不同容器上支持的迭代器功能

3、强弱有所不同。2.容器的迭代器的功能强弱,决定了该容器是否支持STL中的某种算法。例:排序算法-随机 Reverse算法双向,只读,只写,读写,前向,读写,双向,读写,随机,迭代子,Insert iterator,1,Stream iterator,2,Reverse Iterator,3,概念:提供iterator相同的接口,但是改变内部的实现方法,1)back_inserter,2)front_inserter,3)inserter,1)istream_iterator,2)ostream_iterator,1)vector:reverse_iterator,迭代子适配器,#include

4、#include,查找(13个),排序整序(14个),删除替换(15个),排列组合(2个),算术(4个),生成异变(6个),关系(8个),集合(4个),堆(4个),70个标准算法,标准算法,13个,如何选择?,查找算法,建议2:用算法代替循环!,7个,如何选择?,排序算法,标准库中预定义函数对象,1,#include,1)算术函数对象2)关系函数对象3)逻辑函数对象,自定义函数对象,2,?1)姓名查找2)成绩排前三,函数对象,一元函数对象,二元函数对象,建议3:用函数对象代替函数指针!,自定义函数对象,string常用成员函数substr length find rfindfind_first_of erase,还缺少什么?送代码:strutil.h cpp,建议4:用string代替char*,CString与string如何转化?,界面层使用CString业务层使用string,string,stream,网站:http:/,STL相关书籍,

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

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号