第1章 Visual C++6.0程序开发环境 1
1-1 VisualC++概论与安装 2
1-1-1 程序设计的概念 2
1-1-2 Visual C++的特色 2
1-1-3 如何安装Visual C++ 2
1-2 IDE集成开发环境界面 7
1-2-1 什么是IDE集成开发环境 8
1-2-2 Visual C++的IDE界面 8
1-2-3 常用纠错窗口 11
1-3 项目 13
1-3-1 什么是项目 13
1-3-2 项目的管理 13
1-3-3 如何纠错 22
课后习题 27
第2章 C++程序基本结构 29
2-1 程序的基本结构与元素 30
2-2-1 变量与常量 34
2-2 变量声明与数据类型 34
2-2-2 变量与数据类型的关系 35
2-2-3 数据类型的种类 35
2-2-4 变量及常量的声明 36
2-2-5 变量有效范围及生命周期 38
2-3 面向对象 43
2-3-1 什么叫面向对象 43
2-3-2 面向对象的程序设计的特点 43
课后习题 44
第3章 判断语句与循环语句 45
3-1 判断语句 46
3-1-1 用if来做判断 46
3-1-2 C++关系运算符 47
3-1-3 配合else来做判断 47
3-1-4 复合语句 48
3-1-5 嵌套式判断语句 49
3-1-6 加入else-if做判断 52
3-1-7 switch...case的应用 54
3-1-8 逻辑运算符 56
3-2 循环 58
3-2-1 for循环 58
3-2-2 for循环的灵活运用 60
3-2-3 while循环 61
3-2-4 do while循环 63
3-2-5 嵌套式循环 64
课后习题 66
第4章 数组、字符串与结构 69
4-1 数组 70
4-1-1 数组的声明 70
4-1-2 访问数组元素 71
4-1-3 数组初始化 72
4-2 字符串 75
4-2-1 字符串数组 75
4-2-2 数值与字符串间的转换 78
4-2-3 string类 81
4-3 结构 82
4-3-1 结构声明 83
4-3-2 使用结构 84
课后习题 88
第5章 函数的使用 89
5-1 函数的基本概念 90
5-1-1 函数的建立及调用 90
5-1-2 函数原型 92
5-1-3 传递参数 94
5-1-4 函数的返回值 96
5-1-5 函数重载 99
5-1-6 参数默认 102
5-2 局部变量与全局变量 106
5-2-1 局部变量 106
5-2-2 全局变量 108
5-2-3 全局运算符(∷) 109
5-3 公有函数 111
5-3-1 与数学相关的函数 111
5-3-2 与字符串相关的函数 117
5-3-3 与时间相关的函数 121
课后习题 125
第6章 指针在C++中的应用 127
6-1 指针的声明与使用 128
6-1-1 指针的意义 128
6-1-2 指针的声明 128
6-1-3 取址与取值 129
6-1-4 函数的传址调用 133
6-1-5 函数的参考 136
6-1-6 以new初始化指针 138
6-1-7 指针的移动 140
6-2 指针与数组 141
6-2-1 一维数组指针 141
6-2-2 二维数组指针 143
6-2-3 字符串指针 145
6-2-4 字符串指针数组 146
6-3-1 函数指针 148
6-3 指针的高级应用 148
6-3-2 指向指针 151
6-3-3 动态建立数组 153
课后习题 155
第7章 预处理指令 157
7-1 预处理指令 158
7-2 宏定义——#define 158
7-2-1 宏取代 158
7-2-2 宏函数 159
7-2-3 预处理运算符 160
7-3 条件语句 161
7-3-1 #if、#else、#elif与#endif 161
7-3-2 #ifdef及#ifndef 163
7-3-3 #undef 164
7-4 #include、#error及注解 165
7-4-1 包含指令#include 165
7-4-2 除错指令(#error)及注解 165
课后习题 166
7-4-3 注解 166
第8章 流与文件处理 167
8-1 流 168
8-1-1 输出流 168
8-1-2 输入流 174
8-2 文件处理 178
8-2-1 写入与读出的基本操作 179
8-2-2 打开文件模式 183
8-2-3 文件访问深入探讨 185
课后习题 190
第9章 面向对象概念介绍 191
9-1 面向对象基本概念 192
9-1-1 模拟真实世界 192
9-1-2 数据封装 193
9-2 探讨类与对象 194
9-2-1 类的定义 194
9-2-2 成员访问权限 194
9-2-3 类继承 196
9-2-4 多态性与虚函数 197
9-2-5 构造函数和析构函数 199
课后习题 199
第10章 类定义及对象生成 201
10-1 类结构与对象 202
10-1-1 什么是“类”?什么是“对象” 202
10-1-2 类结构格式 202
10-1-4 成员选择运算符(Member Selection Operators) 203
10-1-3 作用域运算符(Scope Resolution Operator) 203
10-1-5 简单的对象应用 204
10-2 对象的建立 207
10-2-1 建立实体对象 207
10-2-2 声明对象数组 207
10-2-3 声明对象指针 208
10-2-4 动态对象的内存配置 209
10-3 再谈构造函数与析构函数 213
10-3-1 构造函数的声明 213
10-3-2 构造函数的种类 214
10-3-3 析构函数的声明 220
10-3-4 构造函数与析构函数的执行顺序 221
10-3-5 对象参数、返回值及对象指派 224
10-4 深入成员函数 229
10-4-1 类成员 229
10-4-2 this指针 232
10-4-3 inline关键字 235
10-4-4 const关键字 238
10-4-5 mutable关键字 239
10-5 静态成员 241
10-5-1 什么是静态成员 241
10-5-2 静态属性 241
10-5-3 静态成员函数 246
10-6 对象的指针运用 247
10-6-1 指针、引用与对象 247
10-6-2 深入“引用” 249
10-6-3 成员指针 254
10-7-1 成员函数与重载 257
10-7 成员函数重载 257
10-7-2 构造函数的重载 260
10-7-3 重载成员函数与参数的默认 264
10-8 重载操作符 265
10-8-1 什么是操作符重载 266
10-8-2 “=”操作符的重载 267
10-8-3 “+=”操作符的重载 270
10-8-3 “[ ]”操作符的重载 272
课后习题 275
第11章 类关系 277
11-1 继承 278
11-1-1 继承的分类 278
11-1-2 private、protected、public 278
11-2 成员与继承的关系 283
11-2-1 数据成员的功能 283
11-3 多重继承 286
11-3-1 多重继承的语法 287
11-3-2 多重继承——函数名称重复 287
11-3-3 多重继承——数据名称重复 288
11-4 友元关系 290
11-4-1 友元关系的定义 291
11-4-2 友元类 291
11-4-3 友元函数——类函数 293
11-4-4 友元函数——一般函数 294
11-4-5 C++的漏洞 295
课后习题 297
第12章 虚函数与多态性 299
12-1-1 实例研究 300
12-1 虚函数 300
12-1-2 增加对象类 307
12-1-3 抽象类 309
12-2 虚析构函数 310
12-2-1 类的构造与析构顺序 310
12-2-2 析构变化 312
12-3 虚继承 313
12-3-1 类的虚继承 314
12-3-2 虚继承的应用 315
12-3-3 虚继承的成员 317
课后习题 318
第13章 模板 319
13-1 模板 320
13-1-1 模板函数 320
13-1-2 模板类 322
13-2 模板类成员 324
13-2-1 链表 324
13-2-2 模板类成员的定义 326
13-2-3 模板继承 329
13-2-4 模板类的Friend声明 330
13-3 模板实战 333
课后习题 335
第14章 以MFC设计Windows程序 337
14-1 Windows程序设计概念 338
14-1-1 MFC类函数库 338
14-1-2 应用程序与窗口对象 338
14-1-4 Windows程序设计中的资源 339
14-1-3 事件与信息 339
14-2 建立应用程序项目 340
14-2-1 在项目中使用MFC 340
14-2-2 建立应用程序 348
课后习题 352
第15章 建立与编辑窗口资源 353
15-1 在窗口中添加菜单 354
15-1-1 建立与编辑菜单 354
15-1-2 自定义窗口类 359
15-1-3 建立快捷键 361
15-2 在窗口中加入工具栏 363
15-2-1 建立与编辑工具栏 364
15-2-2 在窗口中添加工具栏 368
15-2-3 在窗口中增加状态栏 372
15-2-4 字符串表资源 375
课后习题 380
第16章 处理应用程序信息 381
16-1-2 信息处理函数 382
16-1 信息处理的方式 382
16-1-1 使用信息表 382
16-2 键盘与鼠标信息处理 387
16-2-1 基本的鼠标信息类型 387
16-2-2 提取窗口外的鼠标信息 390
16-2-3 基本的键盘信息类型 391
课后习题 396
第17章 Document/View结构与SDI 397
17-1 MFC应用程序框架 398
17-1-1 简介Document/View 398
17-1-2 MFC的Document/View结构 398
17-1-3 建立应用程序结构 400
17-2 深入探讨结构项目 404
17-2-1 框架项目程序说明 404
17-2-2 程序中的文件模板 408
17-2-3 字符串资源说明 409
17-2-4 主窗口类说明 411
17-3 探讨Document类 414
17-3-1 Document类中的虚函数 415
17-3-2 数据的访问方式 416
17-4 探讨View类 417
17-4-1 View类的特性 418
17-4-2 View类中的虚函数 418
17-5 探讨Serialize机制 421
17-5-1 建立Serialize类 421
17-5-2 对象数据的访问 423
课后习题 427
第18章 基本屏幕绘图 429
18-1 各类GDI类的使用 430
18-1-1 设备环境 430
18-1-2 在窗口中绘制文字 433
18-1-3 用画笔绘制线条 435
18-1-4 以笔刷绘制填充区域 438
18-2 显示与使用位图 441
18-2-1 位图对象与结构 441
18-2-2 位图与DC的关系 443
18-2-3 制作透明效果 445
课后习题 449
第19章 对话框建立与应用 451
19-1 编辑对话框资源 452
19-1-1 建立对话框 452
19-1-2 编辑对话框 454
19-1-3 建立对话框类 458
19-1-4 对话框数据与函数成员 461
19-2-1 Modeless与Modal对话框 466
19-2 在程序中使用对话框 466
19-2-2 DDX与DDV 472
课后习题 478
第20章 控件的建立与应用 479
20-1 直接建立控件 480
20-1-1 在View中加入控件 480
20-1-2 控件的信息处理 482
课后习题 484