第1章 C++程序设计入门 1
1.1 C++类 1
类的概念 1
C++中类的定义 2
类成员数据 4
类成员函数的定义方法 5
1.2 C++的标准输入输出流对象 7
标准输入输出流对象的基本应用 7
基本输入输出流对象及它的常用成员函数 9
1.3常量与变量 13
整型常量 13
实型常量 14
字符常量 15
变量的数据类型及其定义 15
整型变量 16
实型变量 17
字符变量与字符串 17
变量声明的位置 20
1.4类对象初步 21
类对象的概念 21
类对象的定义 21
类成员函数中的构造函数与析构函数 25
1.5 Visual C++6.0环境下的程序调试 27
Visual C++ 6.0源程序编辑、编译、连接和运行过程 27
打开已存在的文件 31
C++程序的调试 32
1.6面向对象编程方法的基本特征 37
抽象 37
封装 38
继承 39
多态性 40
习题 42
第2章 C++程序的文件组织与基本运算符 43
2.1 C++程序 43
2.2 C++中的函数 46
函数原型 46
函数体 46
函数的调用方式 47
2.3 C++语句 48
2.4运算符 49
算术运算符 49
关系运算符 50
逻辑运算符 50
位运算符 52
引用 52
习题 54
第3章 循环程序设计 55
3.1 while循环 55
3.2 do…while循环 61
3.3 for循环程序设计 63
for循环结构 63
for语句的几种变形 65
3.4 break语句和continue语句 67
3.5循环嵌套的应用 69
习题 73
第4章 分支程序设计 76
4.1 if语句的应用 76
4.2 if…else语句的应用 79
4.3 if…else if语句的应用 84
4.4 if嵌套语句的应用 86
4.5 switch的应用 87
习题 93
第5章 函数 94
5.1函数的基本概念 94
函数原型 95
函数的定义 95
5.2系统函数的应用 97
5.3函数的参数 100
数据复制方式传递数据 100
地址传送方式传递数据 101
引用方式传递数据 102
5.4默认的函数参数 103
5.5函数重载 105
5.6内联函数 108
内联函数的声明方法 108
内联函数的特点 108
5.7函数与变量的存储类型 110
auto存储类型的变量与作用范围 112
static存储类型的变量与作用范围 112
register存储类型的变量与作用范围 114
extern存储类型的变量与作用范围 114
5.8域分辨操作符 115
5.9函数的嵌套与递归调用 116
函数的嵌套调用 117
函数递归调用 118
习题 121
第6章 指针与数组 126
6.1一维数组 126
6.2二维数组 136
二维数组的定义 136
二维数组的表示、初始化与赋值 137
二维数组可作为一维数组来使用 139
6.3指针的基本概念 140
指针变量的定义 140
指针变量的赋值 140
指针变量的间接寻址运算 141
相同类型指针间的基本运算 142
指针与const限定符 144
6.4一维数组与指针 145
6.5字符串与字符指针变量 148
字符数组与字符串 148
指针变量与字符串 151
6.6数组指针 152
6.7指针数组 154
指针数组的性质 154
指针数组的初始化 155
6.8运算符new和delete与指针 156
习题 159
第7章 指针与函数 164
7.1指针与函数参数 164
7.2用函数指针变量调用函数 172
7.3返回值为指针的函数 177
7.4命令行参数 180
命令行参数的概念 180
命令行参数的表示方法 181
习题 183
第8章 类及其应用 185
8.1类的构造函数 185
构造函数的特点 186
构造函数的应用 187
默认参数的构造函数 193
复制构造函数 194
8.2类的析构函数 197
析构函数的特点 197
析构函数调用顺序举例 198
8.3类静态成员 204
类的静态数据成员 204
类的静态成员函数 207
8.4类的友元 209
友元函数 210
友元成员 212
友元类 215
8.5容器类 218
8.6类与结构 220
8.7对象数组与对象指针 222
对象数组 222
指向类对象的指针 223
指向类成员的指针 225
this指针 228
习题 230
第9章 运算符重载 242
9.1运算符重载的基本概念 242
C++中可重载的运算符 243
运算符重载的定义形式 243
9.2成员函数重载运算符 244
9.3友元函数重载运算符 247
9.4成员函数运算符与友元运算符函数的比较 249
9.5单目运算符的重载 250
9.6赋值运算符的重载 256
9.7二元运算符的重载 258
9.8重载运算符() 265
习题 266
第10章 继承与多态性 271
10.1继承与派生 271
10.2单继承 273
单继承 273
公有继承 273
私有继承 276
保护继承 278
10.3派生类的构造函数和析构函数 280
派生类构造函数和析构函数的执行顺序 280
10.4多继承 290
多继承中派生类的构造函数与析构函数 291
多继承中的二义性问题 295
10.5虚基类 296
10.6多态性的概念 300
10.7虚函数 303
虚函数的定义 303
虚函数的调用 304
虚函数和重载函数的区别 308
10.8纯虚函数与抽象类 310
纯虚函数 310
抽象类 311
10.9多态性的异质单向链 314
习题 320
第11章 模板和异常处理 335
11.1模板 335
函数模板 336
类模板 342
11.2异常处理 354
异常处理的基本思想 354
异常处理的实现 355
异常生命周期 359
异常规格说明 360
异常处理中的构造与析构 361
习题 362
第12章 I/O流与文件 364
12.1 C++流的概念 364
12.2用ios类的成员函数实现格式化输入输出 366
I/O状态标志字 366
ios类中用于控制输入输出格式的成员函数 367
ios类中的其他成员函数 371
12.3用I/O操纵符实现格式化输入输出 373
I/O操纵符 373
用户自定义操纵符 375
12.4文件的操作 376
文件的操作过程 377
定义文件流对象 377
文件的打开与关闭 377
文件的操作方式 379
文本文件应用举例 380
二进制文件的操作 386
文件的随机读写 389
12.5用户自定义类型的输入输出 392
习题 397
第13章 可视化程序设计初步 403
13.1 Windows程序设计基本概念 403
Windows消息 403
消息的种类 404
13.2 Windows程序设计举例 405
CWinApp类 406
CFrameWnd类 406
应用程序举例1 407
应用程序举例2 409
应用程序举例3 412
应用程序举例4 417
应用程序举例5 422
应用程序举例6 424
习题 438
附录A ASCII表 442
附录B 运算符及其优先级汇总表 444
附录C C++语言中常用的保留字 445
参考文献 446