第1章C++编程基础 1
1.1计算机程序设计语言的发展 1
1.1.1机器语言与汇编语言 1
1.1.2高级语言 2
1.1.3面向对象程序设计语言 2
1.2 C++语言概述 3
1.3 C++程序开发过程 4
1.4 C++程序举例 4
1.5注释方法 5
1.6 C++的编程风格 6
1.6.1代码行规范 7
1.6.2修饰符和注释符规范 7
1.6.3类版式的规范 8
1.7 C++ 的输入输出简介 9
1.8小结 10
1.9习题1 10
第2章 基本数据类型及表达式 12
2.1 C++的数据类型 12
2.1.1字符集与关键字 12
2.1.2基本数据类型 13
2.2变量定义 14
2.2.1变量的命名 14
2.2.2变量的定义格式 15
2.2.3变量的赋值与初始化 15
2.3常量定义 16
2.3.1文字常量 16
2.3.2符号常量 18
2.3.3常变量 19
2.4运算符与表达式 19
2.4.1算术运算符 19
2.4.2关系运算符 20
2.4.3逻辑运算符 21
2.4.4赋值运算符 22
2.4.5自增、自减运算符 23
2.4.6位运算符 23
2.4.7其他运算符 25
2.4.8运算符的优先级 25
2.5类型转换 27
2.5.1自动类型转换 27
2.5.2强制类型转换 28
2.6实例应用与剖析 28
2.7小结 30
2.8习题2 31
第3章 语句与控制结构 32
3.1语句格式 32
3.2控制结构 33
3.3 if语句 34
3.3.1基本if语句 34
3.3.2 if…else语句 35
3.3.3嵌套if语句 39
3.3.4条件运算符 39
3.4 switch语句 39
3.5 for循环语句 42
3.5.1 for语句 42
3.5.2 for语句的循环嵌套 44
3.6 while循环语句 45
3.6.1 while语句 45
3.6.2 do……while语句 46
3.7转移语句 47
3.7.1 break语句 47
3.7.2 continue语句 49
3.7.3 goto语句 49
3.8实例应用与剖析 50
3.9小结 52
3.10习题3 53
第4章 函数 57
4.1函数的定义与调用 57
4.1.1函数的定义 57
4.1.2函数的调用 59
4.1.3函数的嵌套调用 60
4.1.4递归调用 62
4.2函数的声明 63
4.3内联函数 64
4.4函数重载 66
4.5带默认形参值的函数 68
4.6实例应用与剖析 70
4.7小结 75
4.8习题4 75
第5章 程序结构 78
5.1全局变量与局部变量 78
5.1.1内存区域的布局 78
5.1.2全局变量 79
5.1.3局部变量 80
5.1.4静态局部变量 82
5.2外部存储类型 84
5.3作用域 85
5.3.1函数原型作用域 86
5.3.2局部作用域 86
5.3.3函数作用域 87
5.3.4文件作用域 87
5.4文件结构 87
5.4.1头文件 89
5.4.2编译预处理 89
5.5实例应用与剖析 90
5.6小结 93
5.7习题5 93
第6章 数组 97
6.1一维数组 97
6.1.1一维数组的定义 97
6.1.2一维数组的地址表示 99
6.1.3一维数组的使用 100
6.2二维数组 103
6.2.1二维数组的定义 103
6.2.2二维数组的地址表示 105
6.2.3二维数组的使用 105
6.3数组作为函数参数 107
6.3.1数组元素作为函数参数 107
6.3.2数组名作为函数参数 108
6.4字符数组与字符串 109
6.4.1字符数组的定义 109
6.4.2字符数组的初始化 109
6.5实例应用与剖析 113
6.6小结 118
6.7习题6 118
第7章 指针与引用 122
7.1指针 122
7.1.1指针变量的定义 122
7.1.2指针变量的初始化 123
7.1.3指针的运算 125
7.1.4指针与数组 128
7.1.5指针与字符串 129
7.1.6指针与函数 130
7.2引用 135
7.2.1引用的定义 135
7.2.2引用的操作 136
7.2.3引用与函数 138
7.2.4常引用 140
7.3实例应用与剖析 142
7.4小结 145
7.5习题7 146
第8章 结构体 149
8.1结构体 149
8.1.1结构体的概念 149
8.1.2结构体类型的声明 150
8.1.3结构体变量的声明 151
8.1.4结构体变量成员的访问 152
8.1.5结构体变量的赋值 153
8.2结构体与数组 156
8.3结构体与指针 158
8.4结构体与函数 160
8.4.1传递结构体参数 160
8.4.2返回结构体 166
8.5小结 169
8.6习题8 169
第9章 类与对象 174
9.1类与对象的定义 174
9.1.1面向对象程序设计 174
9.1.2类的定义 175
9.1.3成员函数 176
9.1.4对象的定义 179
9.2构造函数与析构函数 180
9.2.1构造函数的定义 180
9.2.2带参数的构造函数 183
9.2.3重载构造函数 185
9.2.4析构函数 187
9.2.5拷贝构造函数 190
9.3对象的使用 194
9.3.1组合 194
9.3.2对象指针 196
9.3.3对象引用 198
9.3.4对象数组 199
9.3.5 new和delete的使用 202
9.3.6 this指针 204
9.4静态成员 205
9.4.1静态数据成员 205
9.4.2静态成员函数 207
9.5友元 208
9.5.1友元函数 208
9.5.2友元类 210
9.6常对象与常成员 210
9.6.1常对象 210
9.6.2常成员函数 211
9.6.3常数据成员 212
9.7实例应用与剖析 213
9.8小结 216
9.9习题9 217
第10章 继承与派生 225
10.1继承与派生的定义 225
10.1.1继承的定义 225
10.1.2派生类的构成 226
10.2继承方式 228
10.2.1公有继承(public) 228
10.2.2私有继承(private) 230
10.2.3保护继承(protected) 232
10.3派生类的构造 233
10.4多继承 236
10.4.1多继承派生类的构造 236
10.4.2多继承的二义性问题 239
10.5赋值兼容 240
10.6虚拟继承与虚基类 241
10.7实例应用与剖析 246
10.8小结 249
10.9习题10 250
第11章 多态性与虚函数 257
11.1多态性 257
11.2运算符重载 257
11.2.1运算符重载的实现 258
11.2.2运算符作为成员函数 259
11.2.3运算符作为类的友元函数 263
11.3虚函数 266
11.3.1派生类指针 266
11.3.2虚函数的定义与限制 268
11.3.3纯虚函数与抽象类 270
11.4小结 271
11.5习题11 272
第12章 模板 278
12.1模板的概念 278
12.2函数模板 279
12.2.1函数模板的定义 279
12.2.2函数模板的实例化 280
12.2.3函数模板的重载 284
12.3类模板 286
12.3.1类模板的定义 287
12.3.2类模板的实例化 288
12.3.3类模板与友元 290
12.3.4类模板与静态成员 291
12.3.5类模板的继承与派生 292
12.4标准模板库 293
12.5小结 294
12.6习题12 295
第13章I/O流 298
13.1流的概念 298
13.2 C++流库概述 299
13.2.1标准流类 300
13.2.2文件流类 300
13.2.3串流类 300
13.3使用I/O成员函数 300
13.3.1 istream流中的常用成员函数 300
13.3.2 ostream流中的常用成员函数 301
13.4格式控制 303
13.4.1用流对象的成员函数 303
13.4.2用控制符 305
13.5文件操作 307
13.6小结 312
13.7习题13 313
第14章 异常处理 315
14.1异常的概念 315
14.2异常处理概述 316
14.3异常处理的实现 316
14.4异常处理的规则 320
14.5异常规范 322
14.6异常处理与构造函数和析构函数 324
14.7异常处理类 327
14.7.1异常处理与类 327
14.7.2 C++标准库的异常处理类 333
14.8小结 335
14.9习题14 336
参考文献 338