第一篇 VC++2008基础知识 2
第1章 C++编程基础 2
1.1 C++简介 2
1.1.1 ANSI/ISO标准 2
1.1.2 名称/标识符 3
1.1.3 使用扩展字符集的名称 3
1.1.4 命名空间 4
1.1.5 代码注释 4
1.1.6 标准库 5
1.2 数据类型 6
1.3 变量名 8
1.4 运算符和表达式 9
1.4.1 赋值运算符:将某个数据的值赋给某个变量 10
1.4.2 关系运算符和关系表达式 10
1.4.3 逻辑运算符和逻辑表达式 10
1.5 const关键字 10
1.6 控制语句 12
1.6.1 if语句 12
1.6.2 嵌套的if语句 14
1.6.3 嵌套的if-else语句 20
1.6.4 switch语句 22
1.6.5 while语句 26
1.6.6 for语句 30
1.7 类 33
1.7.1 类的定义 33
1.7.2 类的继承 33
1.7.3 类的多态 34
1.7.4 运算符重载 38
1.8 流类库 39
1.9 模板 40
1.9.1 函数模板 40
1.9.2 特定模板函数 41
1.9.3 类模板 41
1.10 本章总结 42
第2章 MFC编程基础 43
2.1 MFC简介 43
2.1.1 MFC是一个编程框架 43
2.1.2 MFC的优点 45
2.2 MFC类库概念和组成 45
2.2.1 MFC基础类 45
2.2.2 宏和全局函数 46
2.2.3 CObject类的定义 46
2.2.4 应用程序框架 48
2.3 MFC和Win32 51
2.3.1 MFC Object和Windows Object的关系 51
2.3.2 Windows Object 53
2.3.3 Windows的注册 53
2.3.4 MFC窗口类CWnd 55
2.3.5 在MFC下创建一个窗口对象 57
2.3.6 MFC窗口的使用 58
2.3.7 设备描述表 59
2.3.8 设备描述表在MFC中的实现 60
2.4 消息处理与映射 64
2.4.1 Windows消息分类 64
2.4.2 消息处理和消息映射 65
2.5 本章总结 69
第3章 VC++.NET平台与Windows编程 70
3.1 .NET平台组成 70
3.2 .NET框架和运行环境 70
3.3 .NET程序语言 71
3.3.1 Visual Basic.NET 71
3.3.2 C++With Managed Extention 72
3.3.3 C# 72
3.4 VC++2008系统配置 72
3.5 VC++IDE的组成与使用 72
3.5.1 IDE组成元素 72
3.5.2 IDE用户环境 73
3.5.3 IDE的使用 73
3.6 工程和解决方案 74
3.6.1 定义一个工程 74
3.6.2 调试和发布程序 74
3.6.3 错误处理 75
3.7 VC++2008选项设置 75
3.8 创建和执行一个Windows程序 76
3.8.1 创建一个General程序 76
3.8.2 编译和执行一个General程序 77
3.9 创建一个Windows Form程序 77
3.10 本章总结 79
第2篇 数据库应用开发实例 82
第4章 酒店管理系统 82
4.1 实例功能说明 82
4.2 系统设计方案 82
4.2.1 客户信息管理功能设计 82
4.2.2 房间信息管理功能设计 84
4.2.3 查询功能设计 86
4.3 相关技术点播 87
4.4 系统实现与程序代码 89
4.4.1 订房信息管理功能实现 89
4.4.2 房间信息管理功能实现 92
4.4.3 查询功能实现 97
4.5 实例总结 98
第5章 人事管理系统 99
5.1 实例功能说明 99
5.2 系统设计方案 99
5.2.1 增加新员工功能设计 99
5.2.2 人事调动功能设计 100
5.2.3 查询功能设计 101
5.3 相关技术点播 101
5.4 系统实现与程序代码 105
5.4.1 增加新员工功能实现 105
5.4.2 人事调动功能实现 109
5.4.3 查询功能设计 112
5.5 实例总结 116
第6章 考勤管理系统设计 117
6.1 实例功能说明 117
6.2 系统设计方案 117
6.2.1 系统界面设计 117
6.2.2 系统信息管理模块 117
6.2.3 系统记录信息统计模块 119
6.2.4 数据库设计 120
6.3 相关技术点播 122
6.4 系统实现与程序代码 124
6.4.1 系统界面设计 124
6.4.2 系统信息管理模块 126
6.4.3 系统记录信息查询模块 127
6.5 实例总结 133
第7章 图书馆管理系统设计 134
7.1 实例功能说明 134
7.2 系统设计方案 134
7.2.1 系统模块设计 134
7.2.2 数据库设计 135
7.3 相关技术点播 136
7.4 系统实现与程序代码 138
7.4.1 主界面的实现 138
7.4.2 读者信息实现 139
7.4.3 书籍信息实现 141
7.4.4 借阅信息实现 150
7.4.5 还书界面实现 150
7.5 实例总结 151
第8章 仓库管理系统 152
8.1 实例功能说明 152
8.2 系统设计方案 152
8.2.1 系统设计目标 152
8.2.2 系统组成及功能 152
8.2.3 系统总体流程 153
8.2.4 数据库设计 153
8.3 相关技术点播 155
8.4 系统实现与程序代码 157
8.4.1 设备管理实现 157
8.4.2 设备查询实现 164
8.4.3 设备采购计划实现 167
8.5 实例总结 168
第3篇 网络与串口通信开发实例 170
第9章 服务器端应用程序模块 170
9.1 实例功能说明 170
9.2 设计思路分析 170
9.2.1 C/S工作原理 170
9.2.2 服务器工作流程图 170
9.3 相关技术点播 170
9.3.1 客户机/服务器模式简介 170
9.3.2 类CLisent与类CClient功能 172
9.4 程序实现与代码 175
9.4.1 新建项目 175
9.4.2 编辑对话框 175
9.4.3 添加新类CLisent和CClient 175
9.4.4 添加菜单 176
9.4.5 添加代码 177
9.5 实例总结 177
第10章 客户端应用程序模块 178
10.1 实例功能说明 178
10.2 设计思路分析 178
10.3 相关技术点播 178
10.4 程序实现与代码 182
10.4.1 新建项目 182
10.4.2 编辑对话框 182
10.4.3 添加新类CRequest 183
10.4.4 添加菜单 184
10.4.5 添加代码 185
10.5 实例总结 186
第11章 串口编程:调试精灵的实现 187
11.1 实例功能说明 187
11.2 设计思路分析 187
11.3 关键技术与算法 188
11.3.1 MSComm控件 188
11.3.2 增收回显模块 190
11.4 程序实现与代码 190
11.4.1 使用AppWizard创建项目 190
11.4.2 加入串口通信功能 190
11.4.3 设置界面 191
11.4.4 程序主体类分析与实现 192
11.5 安装与配置方案 199
11.5.1 串口编程调试精灵安装项目的设置 199
11.5.2 串口编程调试精灵安装项目文件的设置 200
11.5.3 串口精灵测试 200
11.6 实例总结 200
第12章 串口实现双机互联 201
12.1 实例功能说明 201
12.2 设计思路分析 201
12.2.1 系统架构 201
12.2.2 系统流程 202
12.3 关键技术与算法 202
12.3.1 串口技术 202
12.3.2 串口通信协议设计 204
12.4 程序实现与代码 209
12.4.1 使用AppWizard创建项目 209
12.4.2 编写串口通信底层类 210
12.4.3 界面设计与实现 210
12.4.4 程序主体类的分析与实现 211
12.5 实例总结 221
第13章 GPS程序模块的实现 222
13.1 实例功能说明 222
13.2 设计思路分析 222
13.3 关键技术与算法 223
13.3.1 NMEA-0133协议 224
13.3.2 ODBC技术 225
13.4 程序实现与代码 226
13.4.1 创建并配置数据源 226
13.4.2 使用AppWizard创建项目 227
13.4.3 设置程序界面 227
13.4.4 程序主体类的分析与实现 228
13.5 调试方案 241
13.6 实例总结 241
第14章 PC与PDA数据交互系统设计 242
14.1 实例功能说明 242
14.2 系统设计方案 242
14.2.1 设计原则 242
14.2.2 总体方案 242
14.3 相关技术点播 242
14.3.1 数据互传中的IExch 242
14.3.2 消息定义 243
14.3.3 注册表项 244
14.4 系统实现与程序代码 244
14.4.1 创建PDAComm系统目录结构 244
14.4.2 使用ATL COM AppWizard建立项目 244
14.4.3 实现IExch接口 244
14.4.4 实现COM库注册和卸载函数 245
14.4.5 设计数据互传与转换共同父类 248
14.4.6 设计数据互传与转换类 251
14.5 实例总结 256
第4篇 多媒体应用开发实例 258
第15章 CD播放器的实现 258
15.1 实例功能说明 258
15.2 设计思路分析 258
15.3 相关技术点播 259
15.4 程序实现与代码 260
15.4.1 新建项目 260
15.4.2 编辑对话框 260
15.4.3 添加新类CDAudio 261
15.4.4 添加消息处理函数 263
15.4.5 编译运行程序 271
15.5 实例总结 271
第16章 MIDI播放器的实现 272
16.1 实例功能说明 272
16.2 设计思路分析 272
16.3 相关技术点播 273
16.4 程序实现与代码 274
16.4.1 新建项目 274
16.4.2 编辑对话框 274
16.4.3 添加新类CMIDIPLAY 274
16.4.4 添加消息处理函数 276
16.4.5 编译运行程序 278
16.5 实例总结 278
第17章 借助DirectDraw实现水波的模拟 279
17.1 实例功能说明 279
17.2 设计思路分析 279
17.3 相关技术点播 280
17.4 程序实现与代码 288
17.4.1 使用AppWizard创建项目 288
17.4.2 利用DirectDraw完成对图形的加速 289
17.4.3 程序主要代码 290
17.5 实例总结 299
第18章 用VC++2008设计屏幕抓图 300
18.1 实例功能说明 300
18.2 设计思路分析 300
18.3 相关技术点播 301
18.4 程序实现与代码 304
18.4.1 使用AppWizard创建项目 304
18.4.2 添加控件 305
18.4.3 程序实现代码 305
18.5 实例总结 318
第19章 实现自动连续播放多媒体 319
19.1 实例功能说明 319
19.2 设计思路分析 319
19.3 相关技术点播 320
19.4 程序实现与代码 323
19.4.1 使用AppWizard创建项目 323
19.4.2 添加控件 323
19.4.3 程序实现 324
19.5 实例总结 331
第20章 OpenGL视图中绘制三维物体 332
20.1 实例功能说明 332
20.2 设计思路分析 332
20.3 相关技术点播 333
20.4 程序实现与代码 335
20.4.1 创建项目 335
20.4.2 新建文件 335
20.4.3 添加现有项 336
20.4.4 添加代码 336
20.5 实例总结 344
第5篇 数字图像处理实例 346
第21章 图像复原程序模块 346
21.1 图像复原的原理 346
21.2 图像复原的方法 351
21.2.1 逆滤波器方法—非约束复原 351
21.2.2 最小二乘类约束复原 352
21.2.3 非线性复原方法 352
21.3 逆滤波器方法—VC++程序实现 353
21.4 实例总结 363
第22章 图像的压缩编码程序 364
22.1 实例功能说明 364
22.2 图像压缩编码的技术 364
22.2.1 哈夫曼编码 365
22.2.2 行程编码 365
22.2.3 LZW编码 366
22.2.4 JPEG编码 366
22.3 哈夫曼编码的VC++实现 366
22.3.1 哈夫曼编码算法基础 367
22.3.2 VC++实现哈夫曼编码 367
22.4 实例总结 374
第23章 图像分割程序模块 375
23.1 图像分割原理 375
23.2 图像分割方法 375
23.2.1 基于幅度的图像分割 375
23.2.2 图像的区域分割 376
23.3 迭代求图像最佳分割阈值算法的实现 376
23.3.1 算法与步骤 376
23.3.2 VC++实现 377
23.4 实例总结 387
第6篇 游戏编程开发实例 390
第24章 俄罗斯方块游戏设计 390
24.1 实例功能说明 390
24.2 设计思路分析 390
24.3 相关技术点播 392
24.4 游戏实现与程序代码 392
24.4.1 键盘与玩家操作方法 392
24.4.2 游戏循环结构 394
24.4.3 方块群的组成 396
24.4.4 游戏初始化 398
24.4.5 游戏控制 399
24.4.6 方块的移动 402
24.5 实例总结 403
第25章 太空射击游戏设计 404
25.1 实例功能说明 404
25.2 设计思路分析 404
25.3 游戏实现与程序代码 406
25.3.1 滚动背景的设计 406
25.3.2 敌机的产生与移动 406
25.3.3 子弹的产生 406
25.3.4 检测碰撞的方法 406
25.3.5 程序实现 407
25.4 实例总结 419
第26章 网络游戏外挂模块设计 420
26.1 实例功能说明 420
26.2 设计思路分析 420
26.2.1 网络游戏外挂程序的开发过程 420
26.2.2 本章游戏外挂模块程序的思路 421
26.3 相关技术点播 422
26.3.1 动作模拟技术 422
26.4 外挂的实现与程序代码 424
26.5 实例总结 434
附录A C++编程规范集粹 435
附录B Visual C++编程规范归纳 454