《C++语言与面向对象的设计》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:张志明主编
  • 出 版 社:重庆:重庆大学出版社
  • 出版年份:2006
  • ISBN:7562423547
  • 页数:314 页
图书介绍:本书通过C++语言介绍面向对象程序设计的技术和思想,围绕类的三大基本特性(封装性、继承性和多态性)深入分析和讨论了面向对象程序设计语言的特点和优势。本书第1章是面向对象程序设计概论,第2章到第6章是C++基本语法介绍,第7、8、9、10四章集中介绍C++语言面向对象程序设计的核心概念,第10、11两章分别讨论C++的输入输出和异常处理等应用编程中的实际问题,最后在第13章中通过介绍C++中的软件重用技术,指出深入学习和研究的方向。

第1章 面向对象程序设计概论 1

1.1 程序设计技术的发展 1

1.1.1 面向机器的程序设计语言 2

1.1.2 面向问题求解的程序设计 2

1.1.3 以数据结构为中心的程序设计 3

1.1.4 面向对象的程序设计 3

1.2 面向对象的基本概念 5

1.2.1 面向对象的目标 5

1.2.2 面向对象语言中的类和对象 6

1.3 类和对象的基本特性 8

1.3.1 封装性 8

1.3.2 继承性 8

1.3.3 多态性 9

习题1 10

第2章 C++语言基础 11

2.1 C++语言的基本特点 11

2.1.1 C++语言的由来和发展 11

2.1.2 C++语言的标准化 12

2.2 C++语法基础 12

2.2.1 字符与单词 12

2.2.2 语句 14

2.3 C++程序的基本结构 15

2.3.1 注释 15

2.3.2 预处理命令 15

2.3.3 程序主体 16

2.4.1 C++程序的实现 18

2.4 C++程序的实现与运行环境 18

2.4.2 C++程序的运行环境 19

习题2 19

第3章 C++的基本数据类型 21

3.1 基本数据类型 21

3.2 常量 23

3.2.1 字符常量 23

3.2.2 整型常量 24

3.2.3 浮点常量 24

3.2.4 字符串常量 24

3.2.5 符号常量 25

3.3.1 变量的类型和定义 26

3.3 变量 26

3.3.2 变量的初始化和赋值 27

3.4 指针变量 28

3.4.1 指针的概念 28

3.4.2 指针的定义和使用 29

3.4.3 特殊指针 31

3.4.4 指针运算 32

3.5 类型转换 34

3.5.1 隐式转换 34

3.5.2 强制转换 36

3.5.3 类型转换时要注意的问题 37

习题3 38

4.1.1 算术运算 40

第4章 C++表达式与基本程序控制结构 40

4.1 运算符与表达式 40

4.1.2 关系运算 42

4.1.3 逻辑运算 42

4.1.4 条件运算 43

4.1.5 位运算 43

4.1.6 求字节数运算 44

4.1.7 运算符的优先级和结合性 45

4.2 基本程序控制结构 46

4.2.1 顺序结构 47

4.2.2 选择结构 47

4.2.3 循环结构 53

习题4 60

第5章 数据类型的扩展 64

5.1 数组 64

5.1.1 数组的概念 64

5.1.2 数组的定义、初始化和赋值 65

5.1.3 一维数组与字符串变量 70

5.1.4 多维数组与字符串数组 71

5.1.5 指针与数组 72

5.2 结构类型 78

5.2.1 结构的定义和访问 78

5.2.2 结构与链表 80

5.3.1 枚举的定义 82

5.3.2 枚举常量 82

5.3 枚举类型 82

5.3.3 枚举变量 83

5.4 typedef与类型别名 83

习题5 84

第6章 函数 87

6.1 函数定义与函数原型 87

6.1.1 C++的函数 87

6.1.2 函数定义 88

6.1.3 函数原型 89

6.2 函数的调用和参数传递 90

6.2.1 函数调用的一般概念 90

6.2.2 函数的传值调用 91

6.2.3 函数的传地址调用 93

6.3 指向函数的指针 97

6.3.1 函数指针 97

6.3.2 函数指针作为函数参数 99

6.4 变量的存储类别与作用域 100

6.4.1 变量的存储类别 100

6.4.2 变量的作用域 101

6.4.3 静态存储的变量 104

6.4.4 自由变量的分配与释放 105

6.4.5 名字空间和作用域运算符 107

习题6 110

第7章 类和对象 113

7.1 类的定义 113

7.1.1 类定义格式 113

7.1.2 成员函数的定义 116

7.2 构造函数和析构函数 117

7.2.1 构造函数 117

7.2.2 析构函数 119

7.2.3 缺省构造函数和缺省析构函数 121

7.3 对象的定义和初始化 121

7.3.1 对象的定义 121

7.3.2 对象的存储和访问 122

7.3.3 对象的生存期 122

7.3.4 类的对象成员 123

7.4 指向对象的指针和对象的引用 124

7.4.1 对象的指针 124

7.4.2 指向类成员的指针 126

7.4.3 对象的引用 128

7.4.4 作为函数参数的对象 129

7.4.5 对象数组 132

7.4.6 动态对象 136

7.5 类的静态成员 137

7.5.1 静态数据成员 137

7.5.2 静态成员函数 139

7.6 类的友元 142

7.6.1 友元函数 143

7.6.2 友元类 144

7.6.3 友元成员 145

习题7 147

8.1.1 继承的概念及意义 156

8.1 继承的基本概念 156

第8章 继承 156

8.1.2 派生类的定义格式 157

8.1.3 继承方式 158

8.2 派生类的构造和析构 163

8.2.1 派生类的构造函数 163

8.2.2 派生类的析构函数 165

8.2.3 派生类构造函数和析构函数的使用中应注意的问题 166

8.3 公有继承下的赋值兼容规则 167

8.4 继承成员的调整 169

8.4.1 恢复访问控制方式 170

8.4.2 继承成员的重命名和重定义 170

8.5.2 多继承派生类的构造函数 172

8.5.1 多继承的概念 172

8.5 多继承和虚基类 172

8.5.3 重复继承和虚基类 176

习题8 181

第9章 重载 187

9.1 重载的概念 187

9.2 函数重载 188

9.2.1 函数重载的区分机制 188

9.2.2 构造函数重载 191

9.2.3 拷贝初始化构造函数 193

9.3 运算符重载 197

9.3.1 运算符重载的概念 197

9.3.2 类成员运算符重载 198

9.3.3 友元运算符重载 199

9.3.4 运算符重载举例 202

习题9 210

第10章 多态类与抽象类 216

10.1 虚函数与多态类 216

10.1.1 虚函数的概念和定义 216

10.1.2 动态绑定及其实现技术 218

10.1.3 虚函数应用举例 221

10.1.4 虚析构函数 228

10.2 纯虚函数与抽象类 230

10.2.1 纯虚函数 230

10.2.2 抽象类的概念和定义 231

10.2.3 接口继承 235

习题10 237

第11章 输入输出流类 241

11.1 C++流类库结构 241

11.1.1 流缓冲区类 241

11.1.2 输入输出流类 242

11.2 C++的输入与输出 243

11.2.1 标准输入输出 243

11.2.2 格式化的输入输出 245

11.3 流类运算符重载 248

11.4 文件流与文件操作 249

11.4.1 文件流的创建和文件的打开 249

11.4.2 流类成员函数与文件的操作 251

11.4.3 ASCII文件的输入输出 252

11.4.4 二进制文件及C++类类型对象的输入输出 254

习题11 256

第12章 异常处理 260

12.1 异常处理的基本语法 260

12.2 异常捕获 262

12.2.1 单路捕获 262

12.2.2 多路捕获 263

12.3 异常处理的其他用法 265

12.3.1 异常的重抛 265

12.3.2 异常的限制 266

12.3.3 异常成组 267

习题12 270

13.1.1 软件重用的意义 274

13.1 软件重用的概念 274

第13章 C++语言与软件重用 274

13.1.2 C++支持的软件重用技术 275

13.2 C++模板与重用 277

13.2.1 类型参数化 277

13.2.2 函数模板与模板函数 278

13.2.3 类模板与模板类 281

13.2.4 标准模板库(STL)技术 285

13.3 面向对象设计模式与软件重用 293

13.3.1 设计模式语言 293

13.3.2 设计模式举例 296

习题13 308

参考文献 314