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

  • 购买积分:11 如何计算积分?
  • 作  者:刘振安主编
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2006
  • ISBN:7111197143
  • 页数:284 页
图书介绍:本书介绍了C++中重要的概念和编程思想。

第1章 C++语言的新面貌 1

1.1 似曾相识燕归来 1

1.2 使用函数重载 8

1.3 C++的基本数据类型 8

1.3.1 关键字 8

1.3.2 基本数据类型 9

1.3.3 变量对象 9

1.3.4 常量对象 10

1.3.5 运算符与混合运算 12

1.4 旧貌换新颜 13

1.4.1 指针与const限定符 13

1.4.2 数组 18

1.4.3 类型定义关键字typedef 22

1.5 C++的几个新特点 23

1.5.1 动态分配内存 23

1.5.2 引用 24

1.5.3 泛型算法应用于普通数组 26

1.5.4 数据的简单输入输出格式 31

1.6 各章节的关系和教学建议 34

1.7 程序的编辑、编译和运行的基本概念 34

实验1 如何编辑、编译、调试和运行一个实际程序 39

习题1 39

第2章 从结构到类的演变 41

2.1 结构的演化 41

2.1.1 结构发生质的演变 41

2.1.2 使用构造函数初始化结构的对象 42

2.2 从结构演变到一个简单的类 43

2.3 C++面向对象程序设计的特点 44

2.3.1 对象 44

2.3.2 抽象和类 45

2.3.3 封装 46

2.3.4 继承 47

2.3.5 多态性 47

2.4 数据对象和数据类型 47

2.4.1 数据对象、变量和常量 48

2.4.2 数据类型 49

2.5 熟悉并使用类和对象 49

2.5.1 使用string对象 49

2.5.2 使用string类的典型成员函数实例 51

2.5.3 使用complex对象 52

2.5.4 使用对象小结 53

2.6 string对象数组与范型算法 54

2.7 结构化程序设计典型例题 56

2.8 活捉臭虫保平安 60

2.8.1 一个简单的示例程序 61

2.8.2 编译程序 61

2.8.3 排错 62

2.8.4 基本调试命令简介 63

实验2 练习调试程序 66

习题2 66

第3章 函数和函数模板 69

3.1 函数的基本要素 69

3.2 函数的调用形式 70

3.2.3 函数的参数调用 71

3.2.4 递归调用 71

3.2.2 函数的表达式调用 71

3.2.1 函数的语句调用 71

3.2.5 递归与递推的比较 73

3.3 函数参数的传递方式 75

3.3.1 传值方式 75

3.3.2 传地址方式 76

3.3.3 传引用方式 77

3.3.4 默认参数 78

3.3.5 使用const保护数据 79

3.4 深入讨论函数返回值 79

3.4.1 返回引用的函数 80

3.4.2 返回指针的函数 80

3.4.3 返回对象的函数 81

3.4.4 函数返回值作为参数 82

3.5 内联函数 84

3.6 函数重载和默认参数 84

3.7 函数模板 86

3.7.1 函数模板的基础知识 86

3.7.2 必须使用显式规则的例子 89

3.7.3 模板函数专门化和模板重载 91

实验3 编辑多文件程序及使用函数和函数指针 92

习题3 93

第4章 建立类和对象的概念 96

4.1 类及其实例化 96

4.1.1 定义类 96

4.1.2 使用类的对象及指针 99

4.1.3 数据封装 101

4.2.1 默认构造函数 102

4.2 构造函数 102

4.2.2 定义构造函数 103

4.2.3 构造函数和运算符new 105

4.2.4 构造函数的默认参数 105

4.2.5 复制构造函数 106

4.3 析构函数 107

4.3.1 定义析构函数 107

4.3.2 析构函数和运算符delete 108

4.3.3 默认析构函数 109

4.4 调用复制构造函数的综合实例 109

4.5 成员函数重载及默认参数 111

4.6 this指针 112

4.7 一个类的对象作为另一个类的成员 113

4.8.1 类对象的性质 114

4.8 类和对象的性质 114

4.8.2 类的性质 115

4.9 面向对象的标记图 117

4.9.1 类和对象的UML标记图 117

4.9.2 表示对象的结构与连接 118

4.9.3 使用实例 119

4.9.4 对象、类和消息 120

4.10 面向对象编程的文件规范 121

4.10.1 编译指令 121

4.10.2 编写类的头文件 123

实验4 使用类和对象的实验 123

习题4 124

第5章 特殊函数和成员 127

5.1 对象成员的初始化 127

5.2 静态成员 129

5.3 友元函数 131

5.4 const对象和volatile对象 134

5.5 数组和类 137

5.6 指向类成员的指针 139

5.7 转换函数 142

实验5 友元函数和常对象性质 143

习题5 144

第6章 面向对象编程实例 146

6.1 求解一元二次方程 146

6.1.1 设计代表方程的类 146

6.1.2 设计成员函数 146

6.1.3 编程实现 148

6.1.4 运行示例 150

6.2.1 设计思想 151

6.2.2 设计头文件 151

6.2 出圈游戏 151

6.2.3 实现SeqList.cpp文件 152

6.2.4 文件count.cpp 153

6.2.5 程序运行示例 154

6.2.6 组建工程 154

实验6 多文件编程 154

第7章 继承和派生 156

7.1 继承和派生的基本概念 156

7.2 单一继承 157

7.2.1 单一继承的一般形式 157

7.2.2 派生类的构造函数和析构函数 158

7.2.3 类的保护成员 159

7.2.4 访问权限和赋值兼容规则 160

7.3 多重继承 165

7.4.1 二义性和作用域分辨符 166

7.4 二义性及其支配规则 166

7.4.2 派生类支配基类的同名函数 167

7.5 设计实例 168

7.5.1 使用包含设计的方法 168

7.5.2 使用包含的参考程序及运行结果 169

7.5.3 使用继承的设计方法 171

7.5.4 使用继承的参考程序和 运行结果 172

7.5.5 应注意的几个问题 174

实验7 公有派生的赋值兼容性规则 175

习题7 175

第8章 类模板与向量容器 178

8.1 类模板 178

8.1.1 类模板的基础知识 178

8.1.2 类模板的派生与继承 180

8.1.3 类模板的专门化 184

8.2 向量容器与范型算法 186

8.2.1 定义向量列表 186

8.2.2 泛型指针 187

8.2.3 向量的数据类型 188

8.2.4 向量的基本操作方法 190

8.3 向量应用实例 193

8.3.1 出圈游戏 193

8.3.2 求模程序 196

实验8 演示类模板的构造函数和复制构造函数的设计方法 197

习题8 198

第9章 多态性、虚函数及其他类型 199

9.1 多态性 199

9.1.1 静态联编中的赋值兼容性及名字支配规律 199

9.1.2 动态联编的多态性 201

9.2 虚函数 202

9.2.1 虚函数的定义 202

9.2.2 虚函数实现多态性的条件 203

9.2.3 进一步探讨虚函数与实函数的区别 204

9.2.4 构造函数和析构函数调用虚函数 207

9.2.5 纯虚函数与抽象类 208

9.3 对象的基类指针与多态性 210

9.4 多重继承与虚函数 211

9.5 多重继承与虚基类 212

9.6 结构和联合 214

9.7 枚举 215

9.8 再谈转换函数 216

习题9 217

实验9 虚函数与多态性 217

第10章 运算符重载及流类库 220

10.1 运算符重载 220

10.1.1 重载对象的赋值运算符 220

10.1.2 运算符重载的实质 223

10.1.3 <<、>>和++运算符重载实例 223

10.1.4 类运算符和友元运算符的区别 226

10.1.5 下标运算符的重载 228

10.2 流类库 229

10.2.1 流类库的基本类等级 229

10.2.2 默认输入输出格式控制 230

10.2.3 使用ios_base类 231

10.3 文件流 235

10.3.1 文件流的概念 235

10.3.2 常用输出流成员函数 237

10.3.3 常用输入流成员函数 239

10.4 文件读写综合实例 240

实验10 文件综合实验 243

习题10 243

第11章 面向对象专题讨论 246

11.1 过程抽象和数据抽象 246

11.2 发现对象并建立对象层 246

11.3 定义数据成员和成员函数 248

11.4 如何发现基类和派生类结构 250

11.5 接口继承与实现继承 251

11.6 内嵌类和局部类 253

11.7 命名空间 256

11.8 异常处理 257

11.8.1 引入异常处理 257

11.8.2 异常处理思想 259

11.8.3 异常处理的实现 260

11.8.4 异常处理中的构造与析构 263

11.9 测试与调试知识简介 264

11.9.1 软件的测试集 264

11.9.2 程序的测试与调试 265

11.10 设计实例 268

11.10.1 简单的链表解决方案 268

11.10.2 使用向量实现的实例 270

实验11 改进实验 272

习题11 273

附录A 按字母表顺序排列的C和C++保留字 274

附录B C语言关键字 275

附录C 结构和链表的基础知识 276

参考文献 284