《面向对象程序设计 C++版》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:董正言,张聪主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302227816
  • 页数:289 页
图书介绍:本书以C++语言为基础,阐述面向对象的编程原理。

第1章 绪论 1

1.1 编程语言的发展 1

1.2 C++语言简介 2

1.3 面向对象的程序设计方法 2

1.4 第一个C++程序 4

1.5 小结 5

习题 6

第2章 基本数据类型和运算符 7

2.1 基本概念 7

2.1.1 程序实例 7

2.1.2 C++字符集 8

2.1.3 C++关键字 8

2.1.4 标识符 8

2.1.5 程序注释 9

2.2 基本数据类型 9

2.2.1 整数类型 9

2.2.2 浮点类型 9

2.2.3 字符类型 9

2.2.4 布尔类型 10

2.3 变量和常量 10

2.3.1 变量 10

2.3.2 常量 11

2.4 简单的输入和输出 13

2.5 C++运算符和表达式 14

2.5.1 赋值运算符和赋值表达式 14

2.5.2 算术运算符和算术表达式 15

2.5.3 关系运算符和关系表达式 16

2.5.4 逻辑运算符和逻辑表达式 16

2.5.5 位运算符 17

2.5.6 逗号运算符和逗号表达式 19

2.5.7 条件运算符和条件表达式 19

2.5.8 sizeof运算符 19

2.5.9 其他运算符 19

2.6 数据类型转换 20

2.7 小结 21

习题 22

第3章 控制语句 24

3.1 选择结构 24

3.1.1 if-else选择语句 24

3.1.2 嵌套的if-else语句 25

3.1.3 if-else if语句 25

3.1.4 switch语句 26

3.2 循环结构 28

3.2.1 while循环语句 28

3.2.2 do-while循环语句 29

3.2.3 for循环语句 30

3.2.4 嵌套的循环语句 31

3.3 其他流控制语句 32

3.3.1 break语句和continue语句 32

3.3.2 goto语句 33

3.4 小结 33

习题 33

第4章 复合数据类型 35

4.1 数组 35

4.1.1 数组的定义和初始化 35

4.1.2 使用数组 36

4.1.3 字符数组和字符串 38

4.2 指针和引用 39

4.2.1 定义和使用指针 39

4.2.2 指针和数组 41

4.2.3 数组指针和指针数组 43

4.2.4 使用操作符new和delete进行动态存储分配 45

4.2.5 引用的定义和使用 46

4.3 枚举和结构 48

4.3.1 枚举 48

4.3.2 结构 50

4.4 小结 51

习题 52

第5章 函数 54

5.1 定义和调用函数 54

5.1.1 函数的定义 54

5.1.2 函数的调用 55

5.1.3 函数原型 56

5.2 传递参数 59

5.2.1 传值传递 59

5.2.2 引用传递 60

5.3 局部变量和全局变量 61

5.4 函数调用的实现 63

5.5 内联函数 64

5.6 递归函数 65

5.7 参数的默认值 69

5.8 指针函数和函数指针 70

5.8.1 指针函数 70

5.8.2 函数指针 72

5.9 函数重载 73

5.10 函数模板 75

5.11 小结 77

习题 78

第6章 类和对象(上) 80

6.1 面向对象程序设计概述 80

6.2 创建类 81

6.2.1 定义类 81

6.2.2 类的实现 82

6.3 创建和使用对象 84

6.4 类成员的访问控制 87

6.4.1 类的公有成员 88

6.4.2 类的私有成员 88

6.4.3 类的保护成员 89

6.5 内联的成员函数 93

6.6 构造函数 93

6.6.1 定义类的构造函数 94

6.6.2 默认的构造函数 95

6.6.3 带默认参数值的构造函数 96

6.7 拷贝构造函数 97

6.7.1 定义类的拷贝构造函数 98

6.7.2 默认的拷贝构造函数与对象的浅拷贝问题 100

6.8 析构函数 103

6.9 小结 106

习题 107

第7章 类和对象(下) 108

7.1 类的静态成员 108

7.1.1 静态数据成员 108

7.1.2 静态函数成员 110

7.2 对象指针 112

7.3 动态创建 114

7.3.1 动态创建对象 114

7.3.2 动态创建对象数组 115

7.4 类作用域 117

7.4.1 类成员具有类作用域 117

7.4.2 具有类作用域的数据成员被局部变量屏蔽 118

7.5 this指针 118

7.6 类的组合 122

7.7 常对象和类的常成员 128

7.7.1 常对象 128

7.7.2 常数据成员 129

7.7.3 const成员函数 129

7.8 类模板 130

7.9 友元 136

7.9.1 友元函数 136

7.9.2 友元类 138

7.10 string类 141

7.10.1 构造字符串 141

7.10.2 常用的字符串操作 142

7.11 小结 144

习题 145

第8章 类的继承 147

8.1 基类和派生类 147

8.2 定义派生类 148

8.3 继承方式与访问权限 149

8.4 构造派生类对象 151

8.4.1 派生类对象的结构 152

8.4.2 派生类的构造函数 152

8.5 成员覆盖 157

8.6 实例学习——图形类家族 159

8.7 多重继承 163

8.7.1 多重继承简介 163

8.7.2 多重继承引发的二义性问题 167

8.8 虚基类 172

8.9 对象类型转换 176

8.10 小结 178

习题 178

第9章 多态 183

9.1 什么是多态 183

9.2 虚函数和动态绑定 184

9.3 纯虚函数和抽象类 192

9.4 编译期多态——运算符重载 193

9.4.1 什么是运算符重载 193

9.4.2 用类的成员函数实现运算符重载 194

9.4.3 用类的友元函数实现运算符重载 199

9.4.4 重载赋值运算符= 202

9.5 运行时类型识别(RTTI) 204

9.5.1 dynamic_cast操作符 205

9.5.2 typeid操作符和type_info类 206

9.6 小结 210

习题 210

第10章 程序结构、预处理和命名空间 212

10.1 多文件结构的源程序 212

10.2 文件间的信息共享 217

10.2.1 头文件 217

10.2.2 关键字extern 217

10.2.3 使用关键字static避免同名冲突 218

10.2.4 函数的声明 219

10.2.5 类的声明 219

10.3 预处理 220

10.3.1 #include指令 220

10.3.2 #define指令 221

10.3.3 条件预处理指令 221

10.3.4 使用条件预处理指令避免重复包含 222

10.4 命名空间 223

10.5 小结 224

习题 225

第11章 输入和输出 226

11.1 什么是输入/输出流 226

11.2 输入/输出流类 227

11.2.1 预定义的流对象 227

11.2.2 插入运算符和提取运算符 228

11.2.3 格式化标志和设置格式化标志的函数 230

11.2.4 I/O格式操作符 231

11.2.5 控制输入/输出格式的函数 232

11.2.6 常用的I/O函数 234

11.3 磁盘文件的输入/输出 236

11.3.1 打开文件 236

11.3.2 数据的存储格式和文件的打开模式 237

11.3.3 文件输入/输出 238

11.3.4 文件指针 242

11.4 小结 243

习题 244

第12章 异常处理 245

12.1 抛出异常 245

12.2 捕获和处理异常 245

12.3 异常的传递途径 247

12.4 异常类 248

12.5 小结 251

习题 251

第13章 Windows编程基础 252

13.1 事件驱动机制和Windows SDK编程 252

13.2 MFC 256

13.2.1 一个简单的MFC应用程序 256

13.2.2 MFC简介 258

13.2.3 MFC程序结构分析 263

13.3 消息映射机制 265

13.3.1 Windows消息 265

13.3.2 MFC消息映射机制 267

13.4 Windows程序实例 273

13.5 小结 281

习题 281

附录A 282

参考文献 288