第1章 初识C+ 1
1-1 C++的由来 1
1-1-1 C与C+++的关联 2
1-1-2认识面向对象设计 2
1-2我的第一个C++程序 3
1-2-1编写程序 4
1-2-2保存文件 5
1-2-3编译程序 5
1-2-4运行程序 6
1-2-5程序代码解析 6
1-3程序架构简介 6
1-3-1头文件区 7
1-3-2程序注释 8
1-3-3主程序区——main()函数 9
1-3-4命名空间 10
1-3-5输入/输出功能简介 10
1-3-6程序语句的格式 11
1-3-7标识符与保留字 12
1-4上机实训测验 13
1-5课后练习 13
第2章 变量与数据类型 18
2-1变量简介 19
2-2常数 21
2-3基本数据类型 22
2-3-1整数 22
2-3-2浮点数 24
2-3-3字符 27
2-3-4转义字符 28
2-3-5布尔数据类型 30
2-4上机实训测验 31
2-5课后练习 32
第3章 表达式与运算符 35
3-1表达式的表示法 35
3-2认识运算符 36
3-2-1运算符优先级 36
3-2-2赋值运算符 37
3-2-3算术运算符 38
3-2-4关系运算符 39
3-2-5逻辑运算符 41
3-2-6位运算符 42
3-2-7递增与递减运算符 47
3-2-8复合赋值运算符 49
3-3认识数据类型转换 50
3-3-1自动类型转换 50
3-3-2强制类型转换 52
3-3-3转型运算符简介 53
3-4上机实训测验 55
3-5课后练习 56
第4章 流程控制结构 60
4-1顺序结构 60
4-2选择结构 61
4-2-1 if条件语句 61
4-2-2 if- else条件语句 62
4-2-3 if else if条件语句 64
4-2-4条件运算符 66
4-2-5 switch条件语句 68
4-3循环结构 70
4-3-1 for循环语句 71
4-3-2 for循环的控制子句 72
4-3-3嵌套for循环 73
4-3-4 while循环语句 74
4-3-5 do-while循环语句 76
4-4循环控制指令 78
4-4-1 break指令 78
4-4-2 continue指令 80
4-4-3 goto指令 81
4-5上机实训测验 82
4-6课后练习 85
第5章 数组与字符串 89
5-1数组简介 89
5-1-1数组表示法 89
5-1-2数组与变量 90
5-1-3一维数组 91
5-1-4二维数组 93
5-1-5多维数组 95
5-2字符串简介 97
5-2-1字符串声明 97
5-2-2字符串数组 100
5-3 String类 102
5-3-1声明String类 103
5-3-2字符串运算符功能 105
5-3-3 String类成员函数 106
5-4上机实训测验 108
5-5课后练习 110
第6章 指针与地址 113
6-1认识地址 113
6-1-1指针的作用 113
6-1-2变量地址的存取 114
6-1-3指针变量的声明 115
6-1-4指针运算 118
6-1-5多重指针 121
6-2指针与数组 122
6-2-1指针与一维数组 124
6-2-2指针与多维数组 125
6-2-3指针与字符串 128
6-2-4指针数组简介 130
6-3动态分配功能 134
6-3-1动态分配与静态分配 134
6-3-2动态分配变量 135
6-3-3动态分配数组 136
6-4引用类型 138
6-4-1引用类型声明 138
6-4-2指针引用简介 140
6-5上机实训测验 141
6-6课后练习 143
第7章 函数入门 149
7-1函数功能简介 149
7-1-1自定义函数 149
7-1-2函数声明模式 151
7-1-3函数调用语法 154
7-2认识参数传递 155
7-2-1传值调用模式 155
7-2-2传址调用模式 157
7-2-3传引用调用模式 159
7-2-4参数默认值 160
7-2-5数组参数 162
7-2-6指针返回值 163
7-3上机实训测验 165
7-4课后练习 166
第8章 函数的高级应用 170
8-1函数指针简介 170
8-1-1声明函数指针 170
8-1-2参数型函数指针 172
8-1-3函数指针数组 175
8-2命令行参数 176
8-3变量的种类 179
8-3-1全局变量 179
8-3-2局部变量 179
8-3-3区块变量 179
8-4变量等级说明 180
8-4-1自动变量 180
8-4-2静态局部变量 180
8-4-3外部变量 182
8-4-4静态外部变量 183
8-4-5寄存器变量 185
8-5特殊函数功能 185
8-5-1递归函数 185
8-5-2内联函数 187
8-5-3函数重载 189
8-6上机实训测验 191
8-7课后练习 192
第9章 预处理指令与宏 196
9-1预处理指令 196
9-2 #define指令 198
9-2-1定义基本指令 198
9-2-2定义函数 200
9-2-3宏函数简介 201
9-2-4标准预处理宏 203
9-3条件编译指令 204
9-3-1 #if、 #endif、 #else、 #elif指令 204
9-3-2 #ifdef、 #ifndef指令 206
9-4上机实训测验 207
9-5课后练习 207
第10章 认识自定义数据类型 211
10-1结构 211
10-1-1结构的声明方式 211
10-1-2结构的存取 212
10-1-3结构指针 213
10-2结构与数组 216
10-2-1结构数组 216
10-2-2结构的数组成员 218
10-2-3结构指针数组 219
10-3嵌套结构 221
10-4函数与结构 224
10-4-1结构传值调用 224
10-4-2结构传址调用 226
10-4-3结构传引用调用 226
10-5其他自定义数据类型 227
10-5-1类型定义指令 227
10-5-2枚举类型 228
10-5-3联合类型 231
10-6上机实训测验 233
10-7课后练习 235
第11章 面向对象程序设计入门 240
11-1类的基本概念 240
11-1-1类对象的声明 241
11-1-2存取权限关键字 242
11-1-3创建类对象 243
11-1-4范围解析运算符 245
11-2构造函数与析构函数 246
11-2-1构造函数 246
11-2-2范围解析运算符 248
11-2-3构造函数重载功能 250
11-2-4析构函数 251
11-2-5创建指针对象 253
11-3上机实训测验 255
11-4课后练习 256
第12章 类的高级应用 259
12-1对象数组与友元关系 259
12-1-1对象数组 259
12-1-2友元函数 262
12-1-3友元类 265
12-2 this指针与静态数据成员 267
12-2-1 this指针 267
12-2-2静态数据成员 269
12-2-3嵌套类 271
12-3函数与对象传递 273
12-3-1对象传值调用 273
12-3-2对象传址调用 273
12-3-3对象传引用调用 274
12-4上机实训测验 274
12-5课后练习 275
第13章 运算符重载 277
13-1运算符重载简介 277
13-1-1重载的定义与规则 277
13-1-2一元运算符重载 280
13-1-3二元运算符重载 282
13-2特殊运算符重载介绍 284
13-2-1“〉〉”与“〈〈”运算符重载 284
13-2-2“=”运算符重载 286
13-2-3“==”运算符重载 288
13-2-4“+++”与“一”运算符重载 291
13-3类型转换运算符重载 293
13-3-1类类型转换为基本数据类型 294
13-3-2基本数据类型转换为类类型 296
13-3-3类类型转换成其他类类型 298
13-4上机实训测验 301
13-5课后练习 301
第14章 继承与多态 304
14-1继承关系 304
14-1-1基类与派生类 304
14-1-2单一继承 305
14-1-3 public关键字 305
14-1-4 protected关键字 307
14-1-5 private关键字 309
14-1-6多重继承 312
14-2派生类的构造函数与析构函数 315
14-2-1单一继承构造函数与析构函数 315
14-2-2多重继承构造函数与析构函数 317
14-3多态与虚拟函数 319
14-3-1静态绑定与动态绑定 319
14-3-2声明虚拟函数 322
14-3-3纯虚拟函数 324
14-3-4抽象基类 324
14-3-5虚拟基类 326
14-4上机实训测验 328
14-5课后练习 329
第15章 文件入门与处理 331
15-1数据流的概念 331
15-1-1数据流类 332
15-1-2 I/O处理类 332
15-2文件简介 333
15-2-1文件分类 333
15-2-2按序式与随机式文件 334
15-3 文件的输入/输出管理 334
15-3-1文件的打开 334
15-3-2文件的关闭 335
15-4文本文件操作技巧 337
15-4-1文本文件的写入 337
15-4-2文本文件的读取函数 338
15-5二进制文件操作技巧 340
15-5-1二进制文件的写入 340
15-5-2二进制文件的读取技巧 341
15-5-3随机存取模式简介 343
15-6上机实训测验 345
15-7课后练习 346
第16章 异常处理与模板 349
16-1异常处理功能的基本认识 349
16-1-1简单的异常处理结构 349
16-1-2 try指令 350
16-1-3 catch区块重载 352
16-1-4嵌套try…catch区块 353
16-1-5一次捕获所有异常 355
16-1-6重新抛出异常 356
16-2认识模板功能 358
16-2-1模板分类 359
16-2-2函数模板 359
16-2-3声明函数模板 360
16-2-4非类型参数的模板函数 362
16-3类模板 363
16-3-1声明类模板 364
16-3-2堆栈类模板 366
16-3-3非类型参数类模板 368
16-4上机实训测验 370
16-5课后练习 371
附录A C++的常用函数库 375
A-1字符处理函数 375
A-2字符串处理函数 377
A-3类型转换函数 380
A-4时间和日期函数 381
A-5数学函数 382
A-6随机数函数 384
附录B格式化输入/输出数据 387
B-1插入运算符〈〈 387
B-2常用输出函数 395
B-3提取运算符〉〉 396
B-4常用输入函数 397
B-5错误状态位 399
附录C C++编译程序的介绍与安装 402
C-1 C/C++编译程序简介 402
C-1-1 Visual Studio 402
C-1-2 Dev C+++ 403
C-1-3 GCC 404
C-2 Dev C++的安装与介绍 404
C-2-1下载Dev C+++ 404
C-2-2安装Dev C+++ 405
C-2-3程序项目的建立 407