- 0
- 0
- 约1.68万字
- 约 61页
- 2017-04-01 发布于四川
- 举报
第10章节类库与C的基准模板库STL
《C++面向对象程序设计》教学内容 第1章 C++概述 第2章 类和对象 第3章 面向对象程序设计概述 第4章 进一步学习类和对象 第5章 堆与复制构造函数 第6章 继承性:派生类 第7章 运算符重载 第8章 虚函数和多态性 第9章 模板 第10章 类库和C++的标准模板库STL 第11章 输入输出流 第12章 异常处理 第10章 类库和C++的标准模板库STL 10.1 类库的概念 10.2 C++的标准模板库STL 10.1 类库的概念 1.1.1 什么是类库(class library)? 1.1.2 如何分析、利用类库? 1.1.3 类库的特点 1.1.4 类库是面向对象的软件开发环境的核心 10.1.1 什么是类库? 类库是类的集合,并且给出了多种类之间的关系描述。 为了便于程序员的开发工作,系统提供了一批可供重用的代码。 (源程序代码) 具体表现为一组类,通过建立彼此间的继承关系形成类库,以类的形式提供给用户重用。 什么是类库? ( 续) 在设计和实现面向对象的程序的时候,要用类和类库,才能得到所需的对象,即类的实例。 所以,类库是一种预定义的面向对象的程序库。 类库的例子 C++ Standard STL library Microsoft Visual C++系统中提供的MFC类库。 MFC Microsoft Foundation Class Borland C++系统中提供的OWL类库。 C++ Builder 系统中提供的VCL类库。 类库为软件重用提供基础 OOP提供的继承机制使得程序员可以在已有类的基础上定义自己需要的新类,从而实现了软件模块的重用。 程序员分工进一步细化 在面向对象的程序设计范型之下,程序员的队伍可能要分为两种,它们都以类作为工作对象 一个队伍主要是设计类和类库,另一个队伍主要是使用类来设计应用程序。 分工细化就意味着进步 10.1.2 如何分析、利用类库? 要想发挥面向对象方法的优势,程序员必须知道类库的组织情况。 我们可以通过联机帮助或类库参考手册(类库工作手册)了解: ⒈ 软件开发系统提供的类库的类层次结构。 ⒉ 可能需要用到的类及其父类的属性和方法。 ⒊ 通过联机文档提供的例子学习有关类的使用方法。 衡量应用程序员能力的标准的变化 结构化程序设计时代的标准:每天编写的源代码行数,程序结构清晰。 面向对象程序设计时代的标准: 衡量一个应用程序员的生产力,要看他是否知道如何来最好地发挥已有类库的功能, 要看他有没有能力将已有的类库与新问题紧密的匹配起来, 还要看他不得不另外编写的代码是不是最少。 10.1.3 类库有什么特点 通用性 可扩充性 概念性与层次性 灵活性 通用性 基于重用的目的,选择具有广泛适用性的东西作为类库的内容,并经过全面的考虑,使之适用于较多的情况。 可扩充性 在软件开发过程中,可以添加新的类供以后使用。 对已有的类库进行改进时,只要保持接口不变,修改不会引起外部(即应用系统)软件的变化。 概念性与层次性 类库中的每个类的概念要明确,易于理解,将具有某些共同性质的类作为基类。 设计类要有一个明确的目标。 一个好的类应该是容易理解和使用的。 10.1.4 类库是面向对象的软件开发环境的核心 OOP开发方法只有基于软件重用的思想,才能真正提高软件开发的效率和质量。 类库为软件重用提供了基础,程序设计不必再从零开始。 类库不同于传统的子程序库(函数库),它的性能大大优于子程序库。 10.2 C++的标准模板库STL 10.2.1 名字空间namespace简介 10.2.2 C++标准库的构成 10.2.3 标准模板库STL简介 10.2.4 标准模板库STL应用举例 10.2.1 名字空间namespace简介 日常生活中人名相同引起的名字冲突; C++程序中出现相同的名字引起的冲突: 容器类库中有一个List类 窗口类库中有一个List类 如果一个程序中要同时使用这两个类库就会发生名字冲突 名字冲突的危害 在同一个源文件(编译单元)中出现的名字冲突可以由编译器 compiler 检查出来: Redefined Symbols ( ambiguous symbol ) (参见example10_2) 在不同编译单元(如目标文件)之间的名字冲突可能由链接器Linker检查出来: Identifier multiply defined 也可能导致错误链接,从而产生运行时错误 runtime error。 名字冲突的原因 C++中采用的是单一的全局名字空间(参见)。在这单一的空间中,如果有两个类、两个变量或两个函数的
您可能关注的文档
- 江苏省溧水高级中学2016-2017年度高二上学期期中考试[11月]历史[必修]附解析.doc
- 江苏省溧水高级中学2015-2016年度高二下学期期中考试地理[选修]附解析.doc
- 江苏省溧水高级中学2016-2017年度高二上学期期末考试化学[选修]附解析.doc
- 江苏省溧水高级中学2016-2017年度高二上学期期末考试地理[选修]附解析.doc
- 江苏省溧水高级中学2017年高三上学期开学考试物理试题含解析.doc
- 江苏省溧水高级中学2015-2016年度高二上学期期中考试政治附解析.doc
- 江苏省溧水高级中学2016年高三迎三模模拟卷[4月]数学附解析.doc
- 江苏省溧水高级中学2015-2016年度高一下学期期中考试物理[必修]附解析.doc
- 江苏省溧阳市光华高中2015-2016年度高二下学期期中考试化学试卷扫描缺解析.doc
- 江苏省溧水高级中学2017年高三上学期期初热身测试[8月]地理附解析.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 四年级音乐下册欣赏《包粽子》《欢乐的夜晚》教案苏教版.pdf VIP
- 电镀加工项目可行性研究报告.docx VIP
- 第三单元第二章植物体内的物质与能量变化【速记清单】.docx
- 高大模板工程施工与支撑体系专项方案.docx VIP
- 春节后复工复产方案.doc VIP
- 中建协QC汇编_3-福州建工-提高大面积冷库墙体保温层施工质量——福州建工(集团)总公司.doc VIP
- Q SHB 0003-2016_全自动滚筒洗衣机玻璃观察窗.pdf VIP
- 电力工程安全协议书.doc VIP
- 2019年青海省中考数学试卷【原卷版】材料.pdf VIP
- AI驱动的组织重构与业务重构:绚星智慧科技AI实践白皮书.docx VIP
原创力文档

文档评论(0)