《C++程序设计大学教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:王春玲编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2009
  • ISBN:9787115205537
  • 页数:280 页
图书介绍:本书共包括12章,其主要内容包括面向对象程序设计的基本思想,数据类型、运算符和表达式,基本控制结构,函数,数组、指针与引用,类和对象,继承和派生,虚函数与多态性,运算符重载,模板,C++流和异常处理等。

第1章 绪论 1

1.1 程序设计初步 1

1.1.1 程序设计语言 1

1.1.2 面向对象程序设计 1

1.2 C++的产生与发展 3

1.3 C++的特点 4

1.4 C++程序的基本组成 4

1.5 C++程序的开发过程 5

1.5.1 Visual C++6.0集成开发环境简介 5

1.5.2 C++程序的开发过程 6

1.5.3 控制台应用程序实例 7

1.6 实验指导 9

习题 10

第2章 基本数据类型、运算符与表达式 12

2.1 数据类型 12

2.1.1 基本数据类型 12

2.1.2 类型修饰符 13

2.2 常量 13

2.2.1 整型常量 14

2.2.2 实型常量 14

2.2.3 字符常量 14

2.2.4 字符串常量 15

2.2.5 符号常量 15

2.2.6 逻辑常量 16

2.2.7 枚举常量 16

2.3 变量 16

2.3.1 标识符的命名规则 17

2.3.2 变量的定义 17

2.3.3 变量的使用 18

2.3.4 常变量 18

2.4 运算符和表达式 19

2.4.1 算术运算符和算术表达式 19

2.4.2 自增、自减运算符 20

2.4.3 赋值运算符和赋值表达式 21

2.4.4 sizeof运算符 22

2.4.5 关系运算符和关系表达式 23

2.4.6 逻辑运算符和逻辑表达式 23

2.4.7 条件运算符 24

2.4.8 位运算符 25

2.4.9 逗号运算符 25

2.4.10 运算符的优先级与结合性 26

2.5 数据类型转换 26

2.5.1 隐式类型转换 27

2.5.2 显式类型转换 27

2.6 数据的输入与输出 27

2.6.1 数据的输入cin 28

2.6.2 数据的输出cout 28

2.7 实验指导 30

习题 31

第3章 C++的控制语句 33

3.1 C++语句概述 33

3.2 C++程序的3种基本结构 34

3.3 if语句 36

3.3.1 单分支if语句 36

3.3.2 双分支if语句 37

3.3.3 多分支if语句 38

3.3.4 if语句的嵌套 39

3.4 switch语句 40

3.5 循环语句 42

3.5.1 whi1e循环语句 42

3.5.2 do-whi1e循环语句 43

3.5.3 for循环语句 44

3.5.4 循环语句的嵌套 46

3.5.5 3种循环语句的比较 47

3.6 限定转向语句 48

3.6.1 goto语句 48

3.6.2 break语句 48

3.6.3 continue语句 49

3.6.4 return语句 50

3.7 实验指导 51

习题 54

第4章 函数 57

4.1 函数的定义 57

4.2 函数的返回值 58

4.3 函数的调用 58

4.3.1 函数的调用形式 58

4.3.2 调用函数的前提条件 59

4.3.3 函数定义和函数说明的区别 60

4.3.4 函数的嵌套调用 60

4.4 函数的参数 61

4.4.1 形式参数与实际参数 61

4.4.2 参数的传递方式 61

4.4.3 默认参数 61

4.5 函数的递归调用 62

4.5.1 函数递归调用的概念 62

4.5.2 函数递归调用的条件 63

4.6 内联函数 64

4.6.1 内联函数的定义方法 64

4.6.2 内联函数与普通函数的区别和联系 65

4.6.3 对内联函数的限制 65

4.7 函数重载 65

4.7.1 函数重载的定义 65

4.7.2 匹配重载函数的顺序 68

4.7.3 定义重载函数时的注意事项 67

4.8 变量的作用域与生存期 67

4.8.1 局部变量 68

4.8.2 静态局部变量 68

4.8.3 全局变量 69

4.8.4 静态全局变量 71

4.9 编译预处理 72

4.9.1 宏定义命令 72

4.9.2 文件包含命令 72

4.9.3 条件编译命令 73

4.10 实验指导 74

习题 75

第5章 构造数据类型 78

5.1 数组 78

5.1.1 一维数组 78

5.1.2 二维数组 81

5.1.3 字符数组与字符串 84

5.1.4 字符串函数 87

5.2 指针 89

5.2.1 指针变量 89

5.2.2 const指针 91

5.2.3 用指针作为函数的参数 92

5.2.4 指针与数组 93

5.2.5 指针与字符串 96

5.2.6 指针数组与多重指针 97

5.3 引用 98

5.3.1 引用的定义 98

5.3.2 引用的使用 98

5.3.3 用引用作为函数的参数 99

5.3.4 如何使一个被调函数同时返回多个值 100

5.4 结构体和共用体 102

5.4.1 结构体 102

5.4.2 共用体 104

5.5 动态内存分配与释放 106

5.5.1 申请分配内存 106

5.5.2 释放内存 107

5.6 类型定义typedef 107

5.7 实验指导 108

习题 117

第6章 类和对象 120

6.1 类 120

6.1.1 类的定义 120

6.1.2 类成员的访问权限 121

6.1.3 类的数据成员 122

6.1.4 类的成员函数 122

6.2 对象 124

6.2.1 对象的定义 124

6.2.2 对象的指针 125

6.2.3 访问对象的成员 125

6.2.4 this指针 127

6.2.5 对象的作用域与生存期 128

6.3 构造函数与析构函数 129

6.3.1 构造函数 129

6.3.2 构造函数的重载 130

6.3.3 默认构造函数 131

6.3.4 有缺省参数的构造函数 132

6.3.5 析构函数 134

6.3.6 拷贝构造函数 135

6.3.7 浅拷贝与深拷贝 136

6.4 对象成员与对象数组 139

6.4.1 对象成员 139

6.4.2 对象数组 141

6.5 静态成员 143

6.5.1 静态数据成员 143

6.5.2 静态成员函数 145

6.6 友元函数和友元类 147

6.6.1 友元函数 147

6.6.2 友元类 149

6.7 常对象与常成员 150

6.7.1 常对象 150

6.7.2 常数据成员 151

6.7.3 常成员函数 152

6.8 实验指导 154

习题 160

第7章 继承和派生 170

7.1 继承的概念 170

7.2 单继承 171

7.2.1 单继承的定义方式 171

7.2.2 派生类的成员构成 172

7.2.3 继承方式对基类成员的访问属性控制 173

7.2.4 派生类的构造函数 177

7.2.5 有子对象的派生类的构造函数 182

7.2.6 派生类的析构函数 183

7.3 多重继承 184

7.3.1 多重继承的定义方式 184

7.3.2 多重继承的二义性 186

7.3.3 虚基类及其派生类的构造函数 189

7.4 实验指导 192

习题 197

第8章 虚函数与多态性 203

8.1 多态性 203

8.1.1 多态的类型 203

8.1.2 多态的实现 203

8.2 赋值兼容规则 204

8.3 用基类指针指向公有派生类对象 205

8.4 虚函数 207

8.5 纯虚函数与抽象类 209

8.5.1 纯虚函数 209

8.5.2 抽象类 210

8.5.3 使用纯虚函数与抽象类的注意事项 211

8.6 实验指导 212

习题 216

第9章 运算符重载 221

9.1 运算符重载的概念 221

9.2 重载为类的成员函数 221

9.3 重载为类的友元函数 223

9.4 运算符重载的限制 224

9.5 典型运算符重载 225

9.5.1 赋值运算符的重载 225

9.5.2 单目运算符的重载 226

9.5.3 I/O运算符的重载 228

9.6 实验指导 229

习题 232

第10章 模板 235

10.1 函数模板 235

10.1.1 函数模板的定义 236

10.1.2 函数模板的使用 236

10.2 类模板 238

10.2.1 类模板的定义 239

10.2.2 类模板的使用 239

10.3 标准模板库 242

10.3.1 范型化程序设计 242

10.3.2 标准模板库 243

10.3.3 容器 243

10.3.4 迭代器 245

10.3.5 算法 248

10.4 实验指导 249

习题 250

第11章 流 253

11.1 流概述 253

11.2 数据输出的格式控制 254

11.2.1 域宽控制 254

11.2.2 填充字符控制 255

11.2.3 数制控制 256

11.2.4 浮点数控制 257

11.2.5 对齐方式控制 257

11.3 文件流 258

11.3.1 文件的打开和关闭 259

11.3.2 文件的操作 259

11.4 实验指导 264

习题 265

第12章 异常处理 268

12.1 异常的概念 268

12.2 C++异常处理机制 268

12.2.1 异常处理的语法 268

12.2.2 使用多条catch语句 270

12.2.3 捕获所有类型的异常 271

12.3 限制异常与重抛异常 272

12.3.1 限制异常 272

12.3.2 重抛异常 273

12.4 异常处理中对象的构造和析构 273

12.5 实验指导 275

习题 276

附录 278

附录A C++关键字 278

附录B ASCII码字符表 279

参考文献 280