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

  • 购买积分:11 如何计算积分?
  • 作  者:董正言著
  • 出 版 社:北京:北京邮电大学出版社
  • 出版年份:2010
  • ISBN:9787563521692
  • 页数:286 页
图书介绍:本书以面向对象程序设计的本质特征“抽象、封装、继承和多态”为主线,以C++语言为基础,全面地阐述了面向对象程序设计的基本原理和技术。对核心和重点内容都佐以大量例证。全书共分10章,前3章用于介绍C++语言的基本编程技术,包括数据类型、常用运算符、结构化控制语句和函数。第4章到第7章为面向对象程序设计的核心内容,包括类和对象、类的继承和多态。第8章介绍C++语言的程序结构,编译预处理和命名空间等内容。第9章和第10章分别C++语言的输入/输出操作和面向对象程序设计方法的异常处理机制。

第1章 序论 1

1.1编程语言的发展 1

1.2 C++语言简介 2

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

1.4一个简单的C++程序 4

1.5小结 5

习题 5

第2章 数据处理和控制语句 6

2.1基本概念 6

2.1.1程序实例 6

2.1.2 C++字符集 7

2.1.3 C++关键字 7

2.1.4标识符 8

2.1.5程序注释 8

2.2基本数据类型 8

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算术运算符和算术表达式 14

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控制语句 22

2.7.1 if else选择语句 22

2.7.2嵌套的if else语句 23

2.7.3 if else if语句 24

2.7.4 switch语句 25

2.7.5 while循环语句 26

2.7.6 do while循环语句 28

2.7.7 for循环语句 29

2.7.8嵌套的循环语句 31

2.7.9 break语句、continue语句和goto语句 31

2.8数组 33

2.8.1数组的定义和初始化 33

2.8.2数组的使用 34

2.8.3字符数组和字符串 36

2.9指针和引用 37

2.9.1定义和使用指针 37

2.9.2指针和数组 39

2.9.3数组指针和指针数组 42

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

2.9.5引用的定义和使用 45

2.10枚举和结构 47

2.10.1枚举 47

2.10.2结构 49

2.11小结 51

习题 51

第3章 函数 55

3.1定义和调用函数 55

3.1.1函数的定义 55

3.1.2函数的调用 56

3.1.3函数原型 57

3.2传递参数 61

3.2.1传值传递 61

3.2.2引用传递 62

3.3局部变量和全局变量 63

3.4函数调用的实现 65

3.5内联函数 66

3.6递归函数 67

3.7参数的默认值 72

3.8指针函数和函数指针 73

3.8.1指针函数 73

3.8.2函数指针 75

3.9函数重载 76

3.10函数模板 79

3.11小结 81

习题 82

第4章 类和对象(上) 84

4.1面向对象程序设计概述 84

4.2创建类 85

4.2.1定义类 85

4.2.2类的实现 86

4.3创建和使用对象 88

4.4类成员的访问控制 91

4.4.1类的公有成员 93

4.4.2类的私有成员 93

4.4.3类的保护成员 94

4.5内联的成员函数 98

4.6构造函数 99

4.6.1定义类的构造函数 100

4.6.2默认构造函数 101

4.6.3带默认参数值的构造函数 103

4.7拷贝构造函数 104

4.7.1定义类的拷贝构造函数 104

4.7.2默认的拷贝构造函数 107

4.8析构函数 111

4.9小结 114

习题 115

第5章 类和对象(下) 116

5.1类的静态成员 116

5.1.1静态数据成员 116

5.1.2静态函数成员 118

5.2对象指针 121

5.3动态创建 124

5.3.1动态创建对象 124

5.3.2动态创建对象数组 125

5.4类作用域 127

5.4.1类成员具有类作用域 127

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

5.5 this指针 128

5.6类的组合 132

5.7常对象和类的常成员 140

5.7.1常对象 140

5.7.2常数据成员 141

5.7.3 const成员函数 141

5.8类模板 142

5.9友元 149

5.9.1友元函数 150

5.9.2友元类 152

5.10 string类 155

5.10.1构造字符串 156

5.10.2常用的字符串操作 156

5.11小结 159

习题 159

第6章 类的继承 162

6.1基类和派生类 162

6.2定义派生类 163

6.3继承方式与访问权限 165

6.4构造派生类对象 167

6.4.1派生类对象的结构 167

6.4.2派生类的构造函数 168

6.5成员覆盖 174

6.6实例学习——图形类家族 176

6.7多重继承 181

6.7.1多重继承 181

6.7.2多重继承引发的二义性问题 186

6.8虚基类 192

6.9对象类型转换 196

6.10小结 199

习题 200

第7章 多态 204

7.1什么是多态 204

7.2虚函数和动态绑定 204

7.3纯虚函数和抽象类 215

7.4编译期多态——运算符重载 215

7.4.1什么是运算符重载 216

7.4.2用类的成员函数实现运算符重载 216

7.4.3用类的友元函数实现运算符重载 223

7.4.4重载赋值运算符“=” 226

7.5运行时类型识别(RTTI) 229

7.5.1 dynamic-cast操作符 230

7.5.2 typeid操作符和type-info类 231

7.6小结 235

习题 235

第8章 程序结构、预处理和命名空间 237

8.1多文件结构的源程序 237

8.2文件间的信息共享 242

8.2.1头文件 243

8.2.2关键字extern 243

8.2.3使用关键字static避免同名冲突 244

8.2.4函数的声明 245

8.2.5类的声明 245

8.3预处理 246

8.3.1 ﹟ include指令 246

8.3.2 ﹟ define指令 247

8.3.3条件预处理指令 247

8.3.4使用条件预处理指令避免重复包含 248

8.4命名空间 249

8.5小结 250

习题 251

第9章 输入和输出 252

9.1什么是输入/输出流 252

9.2输入/输出流类 253

9.2.1预定义的流对象 253

9.2.2插入运算符和提取运算符 254

9.2.3格式化标志和设置格式化标志的函数 256

9.2.4输入/输出格式操作符 258

9.2.5控制输入/输出格式的函数 259

9.2.6常用的输入/输出函数 261

9.3磁盘文件的输入/输出 262

9.3.1打开文件 263

9.3.2数据的存储格式和文件的打开模式 264

9.3.3文件的输入/输出 266

9.3.4文件指针 270

9.4小结 271

习题 272

第10章 异常处理 273

10.1抛出异常 273

10.2捕获和处理异常 273

10.3异常的传递途径 276

10.4异常类 277

10.5小结 279

习题 280

附录 281

参考文献 286