chap10C课件清华大学郑莉.pptx
《chap10C课件清华大学郑莉.pptx》由会员分享,可在线阅读,更多相关《chap10C课件清华大学郑莉.pptx(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1主要内容泛型程序设计与标准模板库有关的概念和术语C+标准模板库中的容器迭代器标准C+库中的算法函数对象 第1页/共26页2泛型程序设计将程序写得尽可能通用 将算法从特定的数据结构中抽象出来,成为通用的C+的模板为泛型程序设计奠定了关键的基础 STL是泛型程序设计的一个范例 容器(container)迭代器(iterator)算法(algorithms)函数对象(function object)第2页/共26页3命名空间(Namespace)一个命名空间将不同的标识符集合在一个命名作用域(named scope)内为了解决命名冲突例如,声明一个命名空间NS:namspace NS class
2、File;void Fun();则引用标识符的方式如下,NS:File obj;NS:Fun();没有声明命名空间的标识符都处于无名的命名空间中概念和术语第3页/共26页4命名空间(Namespace)可以用using来指定命名空间例如,经过以下声明:using NS:File;在当前作用域中就可以直接引用Fileusing namespace std;命名空间std中所有标识符都可直接引用在新的C+标准程序库中,所有标识符都声明在命名空间std中,头文件都不使用扩展名概念和术语第4页/共26页5容器容器类是容纳、包含一组元素或元素集合的对象。异类容器类与同类容器类顺序容器与关联容器七种基本容
3、器:向量(vector)、双端队列(deque)、列表(list)、集合(set)、多重集合(multiset)、映射(map)和多重映射(multimap)概念和术语第5页/共26页6容器的接口通用容器运算符=,!=,=,=,=方法(函数)迭代方法begin(),end(),rbegin(),rend()访问方法size(),max_size(),swap(),empty()第6页/共26页7适配器适配器是一种接口类为已有的类提供新的接口。目的是简化、约束、使之安全、隐藏或者改变被修改类提供的服务集合。三种类型的适配器:容器适配器用来扩展7种基本容器,它们和顺序容器相结合构成栈、队列和优先队
4、列容器迭代器适配器函数对象适配器。概念和术语第7页/共26页8迭代器迭代器是面向对象版本的指针,它们提供了访问容器、序列中每个元素的方法。概念和术语第8页/共26页9算法C+标准模板库中包括70多个算法其中包括查找算法,排序算法,消除算法,记数算法,比较算法,变换算法,置换算法和容器管理等等。这些算法的一个最重要的特性就是它们的统一性,并且可以广泛用于不同的对象和内置的数据类型。概念和术语第9页/共26页10顺序容器顺序容器的接口插入方法push_front(),push_back(),insert(),运算符“=”删除方法pop(),erase(),clear()迭代访问方法使用迭代器其它顺
5、序容器访问方法(不修改访问方法)front(),back(),下标运算符容 器第10页/共26页11顺序容器向量向量属于顺序容器,用于容纳不定长线性序列(即线性群体),提供对序列的快速随机访问(也称直接访问)向量是动态结构,它的大小不固定,可以在程序运行时增加或减少。例10-1求范围2N中的质数,N在程序运行时由键盘输入。容 器第11页/共26页/10_1.cpp#include#include#include/包含向量容器头文件using namespace std;int main()vector A(10);int n;int primecount=0,i,j;cout=2 as upp
6、er limit:;cin n;Aprimecount+=2;12第12页/共26页 for(i=3;i n;i+)if(primecount=A.size()A.resize(primecount+10);if(i%2=0)continue;j=3;while(j i/2)Aprimecount+=i;for(i=0;iprimecount;i+)/输出质数 coutsetw(5)Ai;if(i+1)%10=0)/每输出10个数换行一次 cout endl;coutendl;13第13页/共26页14顺序容器双端队列双端队列是一种放松了访问权限的队列。元素可以从队列的两端入队和出队,也支持通
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- chap10C 课件 清华大学
限制150内