《面向对象的理论与C++实践》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:王燕编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:1997
  • ISBN:7302022690
  • 页数:391 页
图书介绍:p;本书主要介绍面向对象的理论及如何用C十十这个语言工具来实现面向对象编程。本书的特点是理论与实践紧密结合,使读者在理解理论的同时,掌握如何实际实现。本书共分为两篇:理论篇和实践篇。理论篇共六章,主要介绍面向对象的理论。实践篇共八章,主要介绍如何用C十十实现面向对象的理论,本篇为各章设计了一个贯穿始终的实例将全书内容联系了起来。另外还简单介绍了Windows应用程序的面向对象实现。本书可作为计算机专业的高年级本科生或与计算机相关专业的研究生的教材,还可以作为已经掌握了C语言的软件设计人员学习面向对象编程的参考书。片断:bsp;“面向对象”是软件程序设计中的一种新思想,由于这种新思想的引入,使我们的程序设计能更加贴近现实,并且花费更小的精力。本章主要介绍“面向对象”思想的由来和面向对象的程序设计方法1.1面向对象思想的由来“对象”一词在现实生活中经常会遇到,它表示现实世界中的某个具体的事物。社会的不断进步和计算机科学的不断发展是相互促进的,一方面计算机科学的发展推动了社会的发展,计算机的广泛应用给整个社会生产力带来了勃勃生机;另一方面社会的发展,又给计算机科学提出了许多新的要求,计算机科

理论篇 3

第1章 绪论 3

1.1 面向对象思想的由来 3

1.2 面向对象程序设计 4

1.3 面向对象程序设计语言 5

1.4 面向对象方法在大型程序设计中的应用 7

1.5 面向对象程序设计范型 8

1.6 面向对象方法的思维科学基础 8

1.6.1 建立模型 9

1.6.2 抽象思维的方法 10

练习题 10

2.1.1 对象的定义 12

2.1 对象 12

第2章 面向对象的基本概念 12

2.1.2 对象的划分 13

2.1.3 对象的状态 13

2.1.4 对象的特性 14

2.2 消息 14

2.2.1 什么是消息 14

2.2.2 公有消息和私有消息 15

2.2.3 特定于对象的消息 16

2.2.4 消息序列 16

2.3 类 17

2.3.1 类的定义 17

2.3.2 类与实例的关系 17

练习题 18

2.3.3 类的确定与描述 18

3.1 封装性 19

3.1.1 什么是封装 19

3.1.2 什么是协议 19

第3章 面向对象系统的特性 19

3.1.3 面向对象系统的封装性 20

3.2 继承性 20

3.2.1 继承的引入 20

3.2.2 继承的分类 21

3.2.3 继承与封装的关系 21

3.2.4 继承与委托的关系 22

3.2.5 类的层次 22

3.2.7 面向对象系统的继承性 23

3.2.6 单继承与多继承 23

3.3 多态性 24

3.3.1 重载的概念 24

3.3.2 虚函数的概念 24

3.3.3 抽象类的概念 25

3.3.4 面向对象系统的多态性 25

练习题 25

第4章 面向对象分析 26

4.1 概念模型 26

4.1.1 为什么要建立概念模型 26

4.1.2 概念间的关系 26

4.2.1 识别对象和类 27

4.2 用面向对象方法建立概念模型 27

4.1.3 信息系统的概念模型 27

4.2.2 对象间的通讯 28

4.2.3 对象关系图示——类图 29

4.2.4 类描述语言 32

练习题 34

第5章 面向对象设计技术 35

5.1 面向对象设计软件生命周期 35

5.1.1 需求分析阶段 36

5.1.2 设计阶段 38

5.1.3 演化阶段 40

5.1.4 维护阶段 41

5.2 面向对象设计的方法 41

练习题 42

第6章 面向对象的数据库概论 43

6.1 什么是面向对象的数据库 43

6.2 面向对象的数据库系统的基本性质 44

6.2.1 必备类性质 44

6.2.2 可选类性质 46

6.3 面向对象的数据模型 47

6.3.1 类 47

6.3.2 对象和对象标识 47

6.3.3 方法和消息传递 47

6.3.4 类层次结构和类组合结构 48

练习题 48

7.1.1 私有成员和公有成员 51

7.1 C++++类的构成 51

第7章 类的定义及其类对象的封装性 51

实践篇 51

7.1.2 类的构造 52

7.2 成员函数的定义 52

7.3 类与对象 54

7.3.1 类与对象的关系 54

7.3.2 类的使用 55

7.3.3 名字解析 55

7.4 构造函数与析构函数 56

7.4.1 构造函数 57

7.4.2 参数化的构造函数 59

7.4.3 缺省参数的构造函数 60

7.4.4 多构造函数 62

7.4.5 拷贝构造函数 63

7.4.6 动态存储 65

7.4.7 析构函数 69

7.5 静态成员 70

7.5.1 静态数据成员 70

7.5.2 静态成员函数 71

7.6 类对象作为成员 74

7.7 对象数组 77

7.8 C++++中的封装性 79

7.8.1 对象的封装 79

7.8.2 程序的模块化 82

7.9 Windows类库中的类框架 84

7.10 实例分析之一 88

练习题 92

第8章 友元 94

8.1 友元的说明和定义 94

8.2 友元函数 95

8.3 友元成员 99

8.4 友元类 100

8.5 友元举例 102

8.6 实例分析之二 105

练习题 106

第9章 重载 107

9.1 函数重载 107

9.1.1 构造函数重载 108

9.1.2 类成员函数重载 109

9.1.3 类以外的一般函数重载 111

9.2 运算符重载 112

9.2.1 用成员函数重载运算符 113

9.2.2 用友元重载运算符 116

9.2.3 ++++和——的重载 126

9.2.4 运算符[]和()的重载 128

9.2.5 new和delete的重载 131

9.2.6 赋值运算符的重载 133

9.3 类型转换 134

9.3.1 一般数据类型间的转换 134

9.3.2 通过构造函数进行类类型转换 137

9.3.3 类类型转换函数 139

9.3.4 类型转换举例 140

9.4 实例分析之三 143

练习题 145

第10章 引用 146

10.1 引用的概念 146

10.2 引用参数 148

10.3 引用返回值 153

10.4 引用举例 157

10.5 实例分析之四 161

练习题 163

第11章 继承与类的派生 165

11.1 派生类的概念 165

11.1.1 为什么使用继承 165

11.1.2 派生类的定义 166

11.1.3 派生类对基类成员的访问权 168

11.1.4 派生类的构造函数和析构函数 176

11.2 派生类对基类成员的继承 183

11.2.1 如何访问基类私有成员 183

11.2.2 通过访问声明调整访问域 191

11.3 多继承 194

11.3.1 多继承的概念 194

11.3.2 多继承的定义 194

11.3.3 多继承的构造函数与析构函数 197

11.3.4 虚基类 204

11.4 Windows应用程序中继承性的使用 211

11.4.1 ObjectWindows类库中的继承性 211

11.4.2 Windows应用程序的建立 213

11.5 实例分析之五 215

练习题 217

第12章 多态性与虚函数 219

12.1 多态性在C++++中的体现 219

12.1.1 编译时的多态性 219

12.1.2 运行时的多态性 221

12.2 虚函数 222

12.2.1 对象指针 222

12.2.2 为什么要引入虚函数 226

12.2.3 虚函数的定义及使用 228

12.2.4 虚函数举例 234

12.3.1 纯虚函数与抽象类 243

12.3 抽象类 243

12.3.2 纯虚函数多态性的体现 245

12.4 Windows应用程序中多态性的使用 251

12.5 实例分析之六 253

练习题 267

第13章 类属 269

13.1 类属 269

13.1.1 为什么要引入类属编程 269

13.1.2 类属表 272

13.1.3 从类属表中导出栈和队列 275

13.2 模板 276

13.2.1 模板的概念 276

13.2.2 函数模板与模板函数 277

13.2.3 类模板与模板类 281

13.3.1 栈 288

13.3 利用模板工具实现类属机制实例 288

13.3.2 队列 296

13.3.3 数组 305

13.3.4 稀疏矩阵 316

13.3.5 图 326

练习题 334

第14章 C++++的I/O流库 335

14.1 C++++流库结构 335

14.1.1 流库的概念 335

14.1.2 streambuf类 336

14.1.3 ios类 336

14.2.1 输入/输出类定义 338

14.2 一般的输入/输出 338

14.2.2 输入/输出运算符的使用 341

14.2.3 格式控制的输入/输出 343

14.3 用户自定义类型的输入/输出 351

14.3.1 重载输入运算符“》” 351

14.3.2 重载输出运算符“《” 353

14.3.3 重载运算符“《”,“》”应用举例 354

14.4 文件的输入/输出 357

14.4.1 文件的打开与关闭 357

14.4.2 文件的读写 359

14.5 实例分析之七 363

14.6 实例综述 383

练习题 391