第1章 VisualC+++6.0集成开发环境 1
1-1-1 VisualC+++6.0的项目工作区 2
13-5-1 CDatabase类 31 2
1-1 VisualStudio集成开发环境的使用 2
1-1-2 类视图(ClassView) 4
1-1-3 资源视图(ResourceView) 4
1-1-4 文件视图(FileView) 5
1-1-5 属性窗口(PropertiesWindow) 5
1-1-6 其他视图窗口 6
1-2 菜单及其功能 6
1-2-1 【file】菜单 6
1-2-2 【Edit】菜单 7
1-2-3 【View】菜单 7
1-2-4 【Insert】菜单 8
1-2-5 【ProJect】菜单 8
1-2-6 【Build】菜单 9
1-2-7 【Tools】菜单 9
1-2-8 【Window】菜单 10
1-2-9 【Help】菜单 10
1-3 学写第一个Windows程序——计算器程序 11
1-3-1 实例概述 11
1-3-2 创建CalExa工程 12
1-3-3 设计应用程序界面 17
1-3-4 编写计算器的实现代码 18
1-4 VisualStudio的资源编辑器 22
1-3-5 保存和编译文件 22
1-4-1 快捷键(Accelerator)编辑器 22
1-4-2 对话框(Dialog)编辑器 23
1-4-3 图标(Icon)编辑器 24
1-4-4 菜单(Menu)编辑器 24
1-4-5 字符串(StringTable)编辑器 25
1-4-6 工具栏(Toolbar)编辑器 25
1-4-7 版本(Version)编辑器 26
1-6 本章习题 27
1-5 本章小结 27
第2章 C++编程基础 29
2-1 基本概念 30
2-1-1 C++的特性 30
2-1-2 标识符 32
2-1-3 关键字 32
2-1-4 常量 33
2-1-5 变量 35
2-1-6 运算符 36
2-2 数据类型 39
2-2-1 整型数据 39
2-2-3 指针型 40
2-2-2 浮点型 40
2-3 控制结构 41
2-3-1 简单顺序 41
2-3-2 条件语句 42
2-3-3 循环语句 44
2-3-4 复杂结构的语句 46
2-4 函数 47
2-4-1 函数的基本概念 47
2-4-2 函数定义和调用 47
2-4-3 函数的参数 48
2-4-4 函数的其他特性 48
2-5-1 结构 49
2-5-2 指针 49
2-5 高级数据类型 49
2-5-3 引用 51
2-6 如何编写高质量的程序代码 51
2-6-1 文件结构 51
2-6-2 程序编写风格 52
2-6-3 命名规则 54
2-6-4 常量规则 55
2-7-1 对象的概念 56
2-6-5 发布程序 56
2-7 面向对象的C++程序设计 56
2-7-2 类的概念 57
2-7-3 类与对象的关系 58
2-8 类的构造 59
2-8-1 类的声明和成员函数的实现 59
2-8-2 继承类与派生类 60
2-8-3 构造函数 61
2-8-4 析构函数 62
2-8-5 虚函数 64
2-8-6 友元函数 68
2-9 this指针 69
2-10 静态数据成员和成员函数 69
2-11 运算符重载 71
2-12 本章小结 73
2-13 本章习题 73
第3章 常用控件 75
3-1 资源与控件 76
3-1-1 资源 76
3-1-2 控件 82
3-2-1 静态控件(StaticBox) 85
3-2 Windows常用控件 85
3-2-2 按钮控件(Button) 87
3-2-3 编辑框(EditBox) 90
3-2-4 滚动条(ScrollBar) 91
3-2-5 列表框(ListBox) 92
3-2-6 组合窗口(ComboBox) 93
3-3-1 实例概述 94
3-3-2 实例设计过程 94
3-3 常用控件编程实例 94
3-4 本章小结 97
3-5 本章习题 97
第4章 调试器和MSDN帮助文档的使用 99
4-1 调试排错的一般方法 100
4-1-1 建立调试工具 101
4-1-2 VC提供的Debug工具介绍 102
4-1-3 TRACE宏与ASSERT宏的利用 107
4-1-4 DUMP函数的利用 108
4-1-5 编写易于调试的程序代码 108
4-2-1 帮助文档的必要性 112
4-2-2 MSDN帮助文档的使用 112
4-2 MSDNLibrary帮助文档 112
4-3 本章小结 115
4-4 本章习题 115
第5章 编写Windows应用程序 117
5-1 WindowsAPI编程 118
5-1-1 WindowsAPI简介 118
5-1-2 消息处理 119
5-1-3 消息回路 121
5-1-4 句柄 122
5-1-5 窗口类和窗口对象 124
5-2 应用程序的控制流程 127
5-2-1 WinMain()函数 127
5-2-2 InitInstance()函数 129
5-2-3 消息循环 129
5-2-7 拖放功能 131
5-2-8 MFC程序的总流程 131
5-2-4 ExitInstance()函数 131
5-2-6 Shell注册 131
5-2-5 OnIdle()函数 131
5-3 使用MFC开发Windows应用程序 134
5-3-1 MFC的类层次结构 135
5-3-2 学习MFC的方法 136
5-3-3 MFC程序类型 137
5-3-4 ClassWizard和WizardBar的使用 138
5-4 本章小结 140
5-5 本章习题 141
第6章 模式对话框及Windows通用控件 143
6-1 模式及无模式对话框 144
6-1-1 对话框的组成 144
6-1-2 模式对话框和无模式对话框 144
6-2 高级控件 145
6-2-1 微调控件(Spin) 145
6-2-2 进度条控件(ProgressBarCtrl) 149
6-2-3 属性页控件(TabCtrl) 152
6-2-4 列表控件(LiStCtrl) 153
6-2-5 树形控件(TreeCtrl) 154
6-3 模式对话框的编程 157
6-3-1 建立对话框资源 157
6-3-2 对话框的数据交换机制 161
6-4 实例精解 163
6-4-1 实例概述 163
6-3-3 设置对话框的背景和其中控件的颜色 163
6-4-2 实例实现过程 164
6-4-3 定时器 166
6-5 本章小结 167
6-6 本章习题 168
第7章 无模式对话框及Windows通用对话框 169
7-1-2 无模式对话框的建立 170
7-1-1 无模式对话框的优点 170
7-1 无模式对话框 170
7-1-3 窗口对象的自动清除 173
7-1-4 手工删除窗口对象 175
7-2 Windows通用对话框 175
7-2-1 CFileDialog类 175
7-2-2 CColorDialog类 177
7-2-3 CFindReplaceDialog类 178
7-2-4 CFontDialog类 183
7-2-5 CPrintDialog类 184
7-3-1 实例概述 185
7-2-6 CPageSetupDialog类 185
7-3 实例精解 185
7-3-2 实例设计过程 186
7-3-3 实例总结 188
7-4 本章小结 189
7-5 本章习题 189
第8章 边框窗口、文档和视图 191
8-1 边框窗口与视图 192
8-1-1 边框窗口类 192
8-1-2 视图类 192
8-2 文档与视图 193
8-2-1 文档与视图概念 193
8-2-2 文档视图结构实例 194
8-2-3 MFC应用程序框架 195
8-3 菜单设计 208
8-3-1 创建菜单 208
8-3-2 菜单项的允许和禁用 213
8-3-3 Cmenu类 214
8-3-4 创建浮动的弹出式菜单 215
8-4 单视图应用程序(SDI) 216
8-4-1 窗口分割 217
8-4-2 SDI应用程序的窗口分割 218
8-5 多视图应用程序(MDI) 226
8-5-1 MDI的文档与视图 226
8-5-2 得到MDI的当前文档和视图 227
8-6 本章小结 228
8-7 本章习题 228
第9章 绘图程序的实现 229
9-1 绘图程序框架的建立 230
9-2 主要的基本概念 230
9-2-1 CDC类 230
9-2-2 简单数据类 232
9-3 图形设备接k(GDI) 232
9-3-1 三种输出类型 233
9-3-2 MFC中与GDI有关的类 233
9-3-3 常见的绘图任务 236
9-4 Windows的映射模式 237
9-5 字体的处理 238
9-5-1 CFont类 240
9-5-2 字体实例 241
9-6-2 位图的装入和显示 243
9-6-1 CBitmap类 243
9-6 GDI位图和DIB 243
9-6-3 DIB与DDB 246
9-6-4 绘图程序的开发应用 248
9-7 本章小结 250
9-8 本章习题 251
第10章 多线程编程 253
10-1 进程和线程 254
10-2 单线程程序消息处理 254
10-3 多线程编程 256
10-3-1 MFC对多线程的支持 256
10-3-2 线程的创建和终止 256
10-3-3 进程和线程的优先级 258
10-3-4 线程的同步机制 259
10-3-5 同步类的使用 259
10-4 多线程编程实例 262
10-4-1 相关函数 262
10-4-2 实例设计 263
10-6 本章小结 263
10-5 需要注意的问题 264
10-7 本章习题 265
第11章 动态链接库 267
11-1 动态链接库(DLL)的概念与优点 268
11-1-1 DLL有关概念 268
11-1-2 DLL的优点 268
11-1-3 DLL有关概念和术语 270
11-2 利用APPWizard开发MFCDLL 274
11-2-1 导出和导入函数的匹配 274
11-2-2 编写DllMain函数 274
11-2-3 模块句柄 275
11-2-4 应用程序怎样找到DLL文件 275
11-3 MFC扩充DLL 276
11-3-1 函数的定义和使用方法 276
11-2-5 调试DLL程序 276
11-3-2 类的添加和使用步骤 279
11-3-3 字符串的定义和使用 279
11-3-4 对话框的定义和使用 279
11-4 MFC常规DLL 279
11-5 几点编程技巧 284
11-5-1 两种类型的比较 284
11-5-2 实际应用中的一点经验 285
11-6 本章小结 285
11-7 本章习题 286
第12章 文件操作 287
12-1 文件的访问操作 288
12-1-1 CFile类 288
12-1-2 操作文件 289
12-1-3 文件访问与共享标志 290
12-1-4 查找文件 291
12-1-5 文件的打开/保存对话框 291
12-1-6 读写文件 292
12-1-7 使用临时文件 293
12-2-1 实例介绍 294
12-2-2 实例设计过程 294
12-2 文件操作实例 294
12-3 本章小结 298
12-4 本章习题 298
第13章 数据库管理编程 299
13-1 数据库概述 300
13-1-1 认识数据库 300
13-1-2 数据库管理系统基本概念 303
13-1-3 选择适用的数据库 303
13-2 数据库访问技术 304
13-2-1 ODBC 304
13-2-3 ADO 307
13-2-2 DAO与RDO 307
13-2-4 OLEDB 308
13-3 SQL语言介绍 309
13-3-1 SQL简介 309
13-3-2 SQL的语法 310
13-3-3 SQL语句详解 311
13-4 VisualC+++6.0开发数据库的特点 311
13-5-2 CRecordSet类 312
13-5 MFCODBC类 312
13-5-3 CRecordView类 313
13-5-4 几种记录集方式 313
13-6 MFCODBC数据库访问技术 314
13-6-1 数据库连接 314
13-6-2 记录查询 314
13-6-3 记录添加 315
13-6-6 统计记录 316
13-6-7 优化数据库的操作 316
13-6-5 记录修改 316
13-6-4 记录删除 316
13-7 MFCODBC数据库管理应用举例 318
13-7-1 实例概述 318
13-7-2 实例实现过程 318
13-8 本章小结 334
13-9 本章习题 335
第14章 MFC网络编程基础 337
14-1-1 TCP/IP概念 338
14-1 网络知识概述 338
14-1-2 服务与安全 342
14-2 Windows套接字 343
14-2-1 套接字概念 343
14-2-2 套接字工作原理 343
14-3 WinSockAPI 344
14-3-1 WinSockAPI概念 344
14-3-2 使用WinSockAPI 344
14-3-3 一个WinSockAPI的例子 348
14-4 其他网络编程技术 352
14-6 本章习题 353
14-5 本章小结 353
第15章 一个简单的聊天室的设计 355
15-1 CAsyncSocket类 356
15-1-1 CAsyncSocket类介绍 356
15-1-2 主要属性与方法介绍 357
15-1-3 套接字选项和CAsyncSocket 359
15-2 计算机的网络配置 359
15-2-1 客户机/服务器系统 359
15-2-2 开发网络程序需要的软、硬件环境 361
15-3-2 实例实现过程 362
15-3-1 实例概述 362
15-3 简单网络聊天室的设计 362
15-4 本章小结 371
15-5 本章习题 371
第16章 制作安装程序 373
16-1 InstallShieldforVC+++6.0的特点 374
16-2 制作安装程序 375
16-2-1 开发环境的概要介绍 375
16-2-2 制作安装程序 376
16-3 本章小结 381
16-4 本章习题 381
本书部分习题答案 383