《高级语言C++程序设计(第二版)》附录C标准模板库(STL).pdfVIP

《高级语言C++程序设计(第二版)》附录C标准模板库(STL).pdf

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《高级语言C程序设计(第二版)》附录C标准模板库(STL),高级语言,高级语言程序?5a0??计,高级语言程序设计一,计算机高级语言,高级语言有哪些,计算机高级语言有哪些,高级语言程序设计pdf,面向对象的高级语言,win7关闭高级语言服务

附录C 标准模板库(STL) 标准模板库(Standard Template Library,STL)是美国国家标准化组织和 国际标准化组织于 98年制定的标准,其最主要与最常用的两部分为容器类 (container classes)以及算法库(algorithm library)。 C.1 概述 首先回想一下第五章所介绍的自定义函数和标准库函数的系统实现方式与 方法以及用户程序中如何对这两种函数来进行使用: )程序中可直接使用(调用)系统预定义的标准库函数(如,1 sin,abs等), 但要求在调用前使用编译预处理指令include将对应的头文件包含进来。 2)用户自定义函数与系统预定义的标准库函数的不同点在于,自定义函数 的函数名、参数个数、函数返回值类型以及函数所完成的功能等都完全由用户程 序来规定(指定);而系统预定义的标准库函数则是一切都事先预定义好的,相 当于是一个软件组件。 与自定义函数和标准库函数两者的关系及其使用方式相类似,C++不但允许 通过用户程序来自定义模板(第九章内容),而且还提供了标准模板库(把最常 用的一大批模板及其对它们进行处理的“算法”都定制为标准组件而包含在其 中),从而可节省用户的编程与调试时间,提高软件产品的使用安全性以及整体 效率。使用方式和方法基本上与函数相类似: 1)程序中可直接使用(调用)系统预定义的标准模板库中的各模板类(如, vector、list等标准模板类),但要求在调用前使用编译预处理指令include将 对应的头文件包含进来(如通过使用“#include vector”等)。 2)用户自定义模板与标准库中系统预定义模板的不同点在于,自定义模板 的模板名、模板参数个数、模板所完成的功能以及其中的每一成员函数等都完全 由用户程序来规定(指定);而系统预定义的各模板则是一切都事先预定义好的, 相当于是一个软件组件。 本附录只对最常用的容器类以及算法库进行简单介绍,以使读者对标准模板 库的使用方法与技术有一个大致的了解,期望能起到抛砖引玉的作用,至于更细 致的部分,可参看系统提供的有关文档资料与使用说明。 容器类是一批相关的标准类模板的总称,其中所包含的最基本的7个标准类 模板是:vector(向量)、list(列表)、deque(双端队列)、map(映像)、multimap (多重映像)、set(集合),以及multiset(多重集合)。另外,在这些容器类 上作一些扩充(或改造)后,系统又提供了如下另一些也经常使用的标准类模板: queue(队列)、stack(栈)、priority_queue(优先级队列)等(注:某些不同 的C++编译器可能还会提供更多的其他标准类模板)。 如同其名字,容器实质上就是用来装载物品的储存器。STL容器也正是用来 存放各种类型的具体对象的。上述所列容器(类模板)中,除了map、multimap、 set和 multiset之外,其他的容器均为顺序容器,即是说,在其中存储的对象 均是有序的,用户可以在指定位置插入或存取对象;而与集合以及映像有关的那 4个类模板则属于非顺序容器,它们并不具有顺序容器的特征。 372 算法库中则包括了各种基本算法,如,sort,copy,search,reverse等。 通过使用算法,可对容器中的对象进行诸如查找、排序、拷贝、置换等各种不同 的操作。C++标准算法库中共提供了多达数十种的不同算法,而这些算法主要通 过一种称为迭代子(iterator)也有称为游标的面向对象的泛型指针来操作(遍 历容器中的不同对象),以达到对各对象进行处理的目的。 下面通过两个实例来叙述对容器类以及对算法库的基本使用方法与技术。 例1.对标准模板类vector(为一种容器类)的使用 #include iostream //不同于iostream.h ,见两个例子之后的说明 #include vector // 由于要使用标准类模板vector using namespace std; //使用名字空间std void main(){ int a[10]; //int 型数组a for (int i=0; i10; i++) a[i]=i; int* ip=a; //

文档评论(0)

xingkongwd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档