c++语言程序设计教程(第2版),C++语言程序设计教程(第2版)

目 录

第 1章 C++语言概述 1

1.1 面向对象的概念 1

1.1.1 面向对象方法的由来 1

1.1.2 面向对象的基本概念 2

1.2 C++语言的特点 3

1.2.1 C++语言是面向对象的程序设计语言 3

1.2.2 C++语言继承了C语言 3

1.2.3 C++语言对C语言进行了改进 4

1.3 C++程序在结构上的特点 4

1.3.1 C++程序举例 5

1.3.2 C++程序结构上的特点 7

1.4 C++程序的实现 7

1.4.1 C++程序的编辑、编译和运行 7

1.4.2 C++程序实现举例 8

练习题1 12

上机指导1 14

第 2章 变量和表达式 16

2.1 C++语言的字符集和单词 16

2.1.1 C++语言字符集 16

2.1.2 单词及其词法规则 16

2.2 常量 18

2.2.1 常量的种类 18

2.2.2 符号常量 21

2.3 变量 22

2.3.1 变量的三要素 22

2.3.2 变量的定义格式 24

2.3.3 变量的作用域 25

2.4 运算符和表达式 27

2.4.1 运算符的种类和功能 27

2.4.2 运算符的优先级和结合性 30

2.4.3 表达式的值和类型 31

2.4.4 表达式求值举例 32

2.5 类型转换 36

2.5.1 自动转换 36

2.5.2 强制转换 37

2.6 数组 37

2.6.1 数组的定义格式和数组元素的表示方法 37

2.6.2 数组的赋值 39

2.6.3 字符数组和字符串 42

练习题2 46

上机指导2 54

第3章 语句和预处理 56

3.1 表达式语句和复合语句 56

3.1.1 表达式语句和空语句 56

3.1.2 复合语句和分程序 57

3.2 选择语句 57

3.2.1 条件语句 57

3.2.2 开关语句 59

3.3 循环语句 61

3.3.1 while循环语句 61

3.3.2 do-while循环语句 62

3.3.3 for循环语句 63

3.3.4 多重循环 65

3.4 转向语句 67

3.4.1 goto语句 67

3.4.2 break语句 68

3.4.3 continue语句 68

3.5 类型定义语句 69

3.6 预处理功能 70

3.6.1 文件包含命令 70

3.6.2 宏定义命令 71

练习题3 72

上机指导3 77

第4章 指针和引用 78

4.1 指针和指针的定义格式 78

4.1.1 什么是指针 78

4.1.2 指针的定义格式 79

4.2 指针的运算 80

4.2.1 指针的赋值运算和增值运算 80

4.2.2 指针的比较运算和相减运算 81

4.2.3 指针运算和地址运算 82

4.3 指针和数组 83

4.3.1 指针可表示数组元素 83

4.3.2 字符指针和字符串处理函数 86

4.3.3 指向数组的指针和指针数组 88

4.4 引用 90

4.4.1 引用和引用的创建方法 91

4.4.2 引用和指针 92

练习题4 93

上机指导4 97

第5章 函数 98

5.1 函数的定义和说明 98

5.1.1 函数的定义 98

5.1.2 函数的说明方法 100

5.2 函数的参数和返回值 100

5.2.1 函数的参数 100

5.2.2 设置函数参数的默认值 101

5.2.3 函数返回值的实现 103

5.3 函数的调用 104

5.3.1 函数的传值调用 104

5.3.2 函数的引用调用 105

5.3.3 函数的嵌套调用 106

5.4 指针和引用作函数参数和返回值 107

5.4.1 指针作函数参数和返回值 107

5.4.2 引用作函数参数和返回值 109

5.5 重载函数和内联函数 110

5.5.1 重载函数 110

5.5.2 内联函数 113

5.6 函数的存储类 113

5.6.1 外部函数 114

5.6.2 内部函数 115

练习题5 116

上机指导5 120

第6章 类和对象(一) 122

6.1 类的定义格式和对象的定义方法 122

6.1.1 类的定义格式 122

6.1.2 对象的定义方法 124

6.1.3 对象成员的表示 125

6.2 对象的初始化 127

6.2.1 构造函数的功能、种类和特点 127

6.2.2 析构函数的功能和特点 128

6.3 数据成员的类型和成员函数的特性 130

6.3.1 类中数据成员类型的规定 130

6.3.2 成员函数的特性 131

6.4 静态成员 133

6.4.1 静态数据成员 133

6.4.2 静态成员函数 135

6.5 常成员 136

6.5.1 常数据成员 136

6.5.2 常成员函数 137

6.6 友元函数和友元类 138

6.6.1 友元函数 139

6.6.2 友元类 140

6.7 类型转换 141

6.7.1 类型的隐含转换 141

6.7.2 一般数据类型转换为类类型 142

6.7.3 类类型转换为一般数据类型 142

练习题6 143

上机指导6 149

第7章 类和对象(二) 151

7.1 对象指针和对象引用 151

7.1.1 对象指针 151

7.1.2 this指针 154

7.1.3 对象引用 155

7.2 对象数组和对象指针数组 157

7.2.1 对象数组 157

7.2.2 对象指针数组 158

7.2.3 指向对象数组的指针 159

7.3 子对象和堆对象 160

7.3.1 子对象 160

7.3.2 堆对象 162

7.4 类的作用域和对象的生存期 165

7.4.1 类的作用域 166

7.4.2 对象的生存期 166

7.5 结构的应用 167

7.5.1 结构变量和结构数组 168

7.5.2 使用struct定义类 171

练习题7 172

上机指导7 178

第8章 继承性和派生类 181

8.1 继承的概念 181

8.1.1 基类和派生类 181

8.1.2 单重继承和多重继承 182

8.1.3 派生类的定义格式 182

8.1.4 派生类成员的访问权限 183

8.2 单重继承 187

8.2.1 单重继承派生类的构造函数和析构函数 187

8.2.2 子类型和赋值兼容规则 193

8.3 多重继承 195

8.3.1 多重继承派生类的构造函数和析构函数 196

8.3.2 多重继承的二义性 198

练习题8 201

上机指导8 206

第9章 多态性和虚函数 209

9.1 运算符重载 209

9.1.1 运算符重载的概念 209

9.1.2 运算符重载的两种方法 210

9.1.3 运算符重载举例 214

9.2 静态联编和动态联编 217

9.2.1 联编的概念 217

9.2.2 虚函数 220

9.2.3 动态联编 221

9.2.4 虚析构函数 224

9.3 纯虚函数和抽象类 225

9.3.1 纯虚函数 225

9.3.2 抽象类 226

练习题9 227

上机指导9 233

第 10章 C++语言文件的输入/输出操作 234

10.1 I/O流类库概述 234

10.1.1 输入/输出流 234

10.1.2 I/O流类库的主要功能 234

10.2 标准文件的输入/输出操作 235

10.2.1 屏幕输出操作 235

10.2.2 键盘输入操作 238

10.3 格式输出操作 241

10.3.1 使用流对象的成员函数进行格式输出 242

10.3.2 使用控制符进行格式输出 244

10.4 磁盘文件的操作 245

10.4.1 打开文件和关闭文件操作 245

10.4.2 文件的输入/输出操作 247

10.4.3 随机文件操作 250

练习题10 251

上机指导10 255

第 11章 模板 257

11.1 模板的基本概念 257

11.2 函数模板 257

11.2.1 函数模板的定义格式 257

11.2.2 函数模板与模板函数 260

11.3 类模板 261

11.3.1 类模板的定义格式 261

11.3.2 类模板继承 265

练习题11 266

上机指导11 269

第 12章 数据结构 271

12.1 几种常用的数据结构 271

12.1.1 栈 271

12.1.2 队列 274

12.1.3 线性链表 276

12.1.4 二叉树 280

12.2 查找和排序运算 284

12.2.1 查找运算 284

12.2.2 排序运算 290

练习题12 292

上机指导12 297

第 13章 异常处理和命名空间 298

13.1 异常处理 298

13.1.1 C++的异常处理机制 298

13.1.2 异常与继承 305

13.1.3 构造函数和析构函数的异常处理 306

13.2 命名空间 308

13.2.1 命名空间的定义和使用方法 308

13.2.2 简化使用命名空间成员 311

13.2.3 标准命名空间 313

练习题13 313

上机指导13 318

附录A 字符的ASCII码表 320

附录B Microsoft Visual C++6.0集成开发工具简介 322

附录C C++标准库简介 329

参考文献 332

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值