第1篇 基础知识 2
第1章 Visual C++ 6.0集成开发环境(教学视频:24分钟) 2
1.1走近Visual C++ 2
1.1.1 Visual C++++的语言基础——C++++语言 2
1.1.2 Visual C++++的接口函数——Windows API 2
1.1.3 Visual C++++的类库——MFC 3
1.2 Visual C++++ 6.0集成开发环境 3
1.2.1安装 3
1.2.2 Visual C++++ 6.0开发环境介绍 3
1.3入门实例 6
1.4应用程序的开发步骤 8
1.5小结 8
第2章 C++语言基础(教学视频:81分钟) 9
2.1什么是面向对象程序设计 9
2.2单一数据的表示——数据类型 10
2.2.1数据的指代——常量与变量 10
2.2.2简单数据类型 11
2.2.3字符串常量 12
2.2.4构造类型——数组 13
2.2.5文件类型 13
2.2.6指针类型 13
2.3多个数据的表示——数组 13
2.3.1一维数组 14
2.3.2二维数组 15
2.3.3字符数组 16
2.4数据运算的核心——运算符 17
2.4.1赋值运算符 18
2.4.2算术运算符 18
2.4.3逻辑运算符 18
2.4.4关系运算符 19
2.4.5位运算符 19
2.4.6逗号运算符 19
2.5程序的基本单元——表达式和语句 19
2.6程序控制结构 20
2.6.1直肠子程序——顺序结构 20
2.6.2有头脑的程序——选择结构 21
2.6.3死脑筋的程序——循环结构 23
2.7 C++的输入输出 26
2.8编程实例与调试 27
2.8.1编写代码 27
2.8.2 Visual C++++项目文件介绍 27
2.8.3调试与运行 28
2.9小结 28
2.10习题 28
第3章 函数(教学视频:29分钟) 30
3.1什么是函数 30
3.2构建函数 30
3.2.1定义函数 30
3.2.2函数参数——传递数据 31
3.2.3函数的返回值——有去有回 33
3.3使用函数 33
3.3.1函数调用的一般形式 33
3.3.2函数的嵌套调用——函数中再调用函数 34
3.3.3函数的递归调用——自己调用自己 35
3.4函数应用实战 35
3.4.1函数应用实例的代码编写 35
3.4.2断点跟踪调试 37
3.5小结 38
3.6习题 39
第4章 C++的面向对象编程(教学视频:53分钟) 40
4.1类和对象 40
4.1.1从结构到类 40
4.1.2定义成员函数 42
4.1.3对象应用 43
4.1.4对象的作用域 45
4.2构造函数和析构函数 46
4.2.1对象的初始化工具——构造函数 46
4.2.2默认参数的构造函数 46
4.2.3对象的销毁工具——析构函数 48
4.2.4重载构造函数与拷贝构造函数 49
4.3窥探类的内部——友元 51
4.3.1友元函数 51
4.3.2友元成员 52
4.3.3友元类 53
4.4由类生类——派生类 53
4.4.1继承 53
4.4.2基类成员在派生类中访问属性 54
4.4.3派生类对基类成员的访问规则 54
4.5派生类的构造函数与析构函数 55
4.5.1派生类构造函数和析构函数的执行顺序 55
4.5.2派生类构造函数和析构函数的构造规则 56
4.6继承与多重继承 57
4.6.1继承和多重继承概述 57
4.6.2多重继承的声明 57
4.6.3虚基类 58
4.7多态的基本概念 59
4.8函数重载和运算符重载 60
4.8.1函数重载 60
4.8.2运算符重载 61
4.9虚函数 61
4.10小结 63
4.11习题 63
第5章VC开发的基础——MFC与Windows(教学视频:21分钟) 66
5.1什么是Microsoft类库 66
5.2 MFC常见类介绍 67
5.2.1根类CObject 67
5.2.2窗口类 67
5.2.3文件类 68
5.2.4网络类 68
5.2.5 ODBC类 69
5.2.6辅助类 69
5.3 MFC的本质——Windows编程 70
5.3.1窗口 70
5.3.2事件驱动 70
5.3.3句柄和Windows消息 70
5.4 Windows应用程序的基本结构 72
5.5小结 73
第2篇 可视化程序设计 76
第6章 最简单的界面化程序——对话框(教学视频:66分钟) 76
6.1创建对话框应用程序 76
6.2使用对话框 78
6.2.1创建对话框 79
6.2.2使用模态对话框 80
6.2.3使用非模态对话框 82
6.2.4设置对话框属性 85
6.3对话框功能的实现——控件 86
6.3.1添加控件 86
6.3.2删除控件 86
6.3 3设置控件属性 87
6.3.4添加控件变量 87
6.4界面中数据的处理——数据成员和函数成员 89
6.4.1数据成员 89
6.4.2成员函数 89
6.4.3消息处理函数 89
6.5对话框程序分析 90
6.6消息对话框 93
6.7通用对话框 95
6.7.1文件对话框 95
6.7.2字体对话框 97
6.7.3颜色对话框 98
6.7.4查找与替换对话框 99
6.8小结 102
6.9习题 102
第7章 单文档和多文档(教学视频:71分钟) 104
7.1什么是文档 104
7.1.1单文档界面与多文档界面 104
7.1.2文档/视图结构 104
7.2文档/视图应用程序 104
7.2.1构建单文档应用程序 105
7.2.2单文档程序的核心——消息传递 108
7.3文档/视图结构分析 108
7.3.1主程序类CWinApp 108
7.3.2文档类的基类CDocument 108
7.3.3文档类C V iew 109
7.3.4文档模板类CDocTemplate 110
7.3.5框架窗口类CFrameWnd 110
7.4单文档程序分析 111
7.4.1从基本概念开始 111
7.4.2理解应用程序 112
7.5文档操作 117
7.5.1串行化处理 117
7.5.2消息映射 118
7.5.3消息传递 118
7.6 SDI应用程序实战 119
7.7 MFC的集合类与字符串类 123
7.7.1集合类介绍 123
7.7.2 CTypedPtrList模板链表类 123
7.7.3字符串类 125
7.8 MDI应用程序 126
7.8.1 MDI应用程序分析 126
7.8.2 MDI应用实例 127
7.9小结 131
7.10习题 131
第8章 常用控件(教学视频:68分钟) 133
8.1概述 133
8.2按钮控件 134
8.2.1创建按钮控件 134
8.2.2使用按钮控件 135
8.3滚动条控件 136
8.3.1创建滚动条 136
8.3.2使用滚动条控件 137
8.4静态文本控件 138
8.5列表框控件 139
8.5.1列表框控件相关类 139
8.5.2使用列表框 140
8.6列表视图和树视图控件 142
8.6.1列表视图控件的构成 143
8.6.2使用列表视图控件 144
8.6.3树视图控件的构成 144
8.6.4使用树视图控件 146
8.7编辑框控件 148
8.7.1编辑框的构成 148
8.7.2使用编辑框 150
8.8组合框控件 151
8.8.1组合框控件的构成 151
8.8.2设置组合框 152
8.8.3组合框的消息传递 153
8.9 Tab属性页控件 153
8.9.1 Tab属性页的构成 153
8.9.2使用属性页 154
8.10其他常用控件 156
8.10.1进度条控件 156
8.10.2滑块控件 156
8.10.3 IP Address控件 157
8.10.4时间控件 157
8.10.5应用实例 159
8.11小结 162
8.12习题 162
第9章 菜单、工具栏和状态栏设计(教学视频:39分钟) 164
9.1概述 164
9.2菜单 164
9.2.1创建菜单 165
9.2.2响应菜单项命令 166
9.2.3菜单类概览 169
9.2.4弹出式菜单 169
9.2.5使用对话框中的菜单 170
9.3工具栏 174
9.3.1创建工具栏 174
9.3.2工具栏相关类 176
9.3.3响应工具栏的命令 177
9.3.4使用工具栏 177
9.4状态栏 180
9.4.1状态栏 180
9.4.2状态栏操作实例 181
9.5使用快捷键 182
9.6小结 184
9.7习题 184
第10章 Windows图形处理与文本输入输出(教学视频:72分钟) 186
10.1设备环境 186
10.1.1设备环境类 186
10.1.2映射模式 187
10.2绘图 188
10.2.1画笔 188
10.2.2画刷 190
10.2.3绘图相关的数据类型 190
10.3绘图实例 192
10.3.1绘图函数介绍 192
10.3.2刷新/重绘图形 194
10.3.3创建简单绘图程序 194
10.3.4使用区域绘制图形 198
10.4文本 199
10.4.1字体的结构 199
10.4.2创建字体 200
10.5文本输出 201
10.5.1文本输出函数 201
10.5.2设置文本格式 202
10.6打印 204
10.6.1单页打印 204
10.6.2多页打印 206
10.6.3打印过程 207
10.7小结 208
10.8习题 208
第3篇 Windows程序设计 214
第11章 文件处理(教学视频:36分钟) 214
11.1文件的输入输出 214
11.1.1 C++++对文件操作的支持 214
11.1.2文件的打开与关闭 214
11.1.3文本文件的输入和输出 215
11.1.4二进制文件的输入和输出 216
11.2 CFile类 217
11.2.1初识CFile类 217
11.2.2使用CFile类 218
11.3 CFileFind类 219
11.3.1初识CFileFind类 219
11.3.2使用CFileFind类 221
11.4数据的对象化——串行化 223
11.4.1 CFile类与串行化 223
11.4.2操作实例 224
11.5小结 226
11.6习题 227
第12章 注册表与INI文件(教学视频:24分钟) 228
12.1什么是注册表 228
12.1.1注册表的基本结构 228
12.1.2注册表的数据类型 229
12.2操作注册表 229
12.2.1注册表关键类CRegKey 230
12.2.2添加注册表数据 231
12.2.3查询注册表 232
12.2.4枚举注册表 232
12.3 Windows配置文件INI 234
12.4 INI文件操作函数 234
12.4.1操作INI文件函数介绍 235
12.4.2读写INI文件中键名数据 236
12.4.3枚举节与键 237
12.5小结 238
12.6习题 238
第13章 动态链接库(教学视频:41分钟) 240
13.1什么是动态链接库 240
13.2创建动态链接库 241
13.2.1创建MFC动态链接库 241
13.2.2创建Win32动态链接库 242
13.3使用动态链接库文件 243
13.3.1动态链接库的入口函数 243
13.3.2动态链接库中数据和函数的导出 244
13.3.3动态链接库的加载 245
13.4动态链接库应用实战 246
13.4.1 MFC动态链接库应用实例 246
13.4.2 Win32动态链接库应用实例 248
13.5钩子函数 250
13.5.1钩子技术介绍 250
13.5.2钩子类型和范围 250
13.5.3安装和解除钩子 251
13.6小结 252
13.7习题 252
第14章 多线程编程(教学视频:28分钟) 255
14.1多任务、进程和线程 255
14.1.1多任务介绍 255
14.1.2什么是进程 255
14.1.3单线程与多线程 256
14.2多线程技术 256
14.2.1线程的创建与终止 257
14.2.2线程的分类 257
14.2.3进程的控制 257
14.3多线程程序设计 258
14.3.1创建线程 258
14.3.2终止线程 259
14.3.3线程间通信 259
14.4线程同步 260
14.5创建线程实例 262
14.6小结 265
14.7习题 265
第15章 数据库应用程序设计(教学视频:49分钟) 267
15.1数据库的奥义 267
15.2关系数据库原理 268
15.3数据库标准语言——SQL语言 268
15.3.1 SQL概述 269
15.3.2主要特点 269
15.3.3数据定义语句 270
15.3.4数据查询语句 271
15.3.5数据更新语句 272
15.4数据库设计方法 273
15.5 ODBC基础 274
15.6 ODBC数据库编程 276
15.6.1 ODBC类介绍 276
15.6.2设置ODBC数据源 277
15.6.3连接数据源 278
15.6.4更新数据表 279
15.6.5根据条件查询记录 283
15.7什么是ADO 285
15.8 ADO数据库编程 286
15.8.1导入ADO动态链接库 286
15.8.2连接数据库 286
15.8.3执行SQL语句 288
15.8.4 ADO的其他对象 289
15.9小结 289
15.10习题 290
第16章 网络编程(教学视频:39分钟) 291
16.1计算机网络概述 291
16.1.1 OSI模型 291
16.1.2 TCP/IP协议 292
16.1.3 TCP/IP协议核心 293
16.1.4 Windows Sockets基础 294
16.1.5客户/服务器模式 295
16.2使用Windows Socket开发 295
16.2.1套接字(Socket)的引入 295
16.2.2套接字的类型 296
16.2.3基于TCP(面向连接)的Socket编程 296
16.2.4基于UDP(面向无连接)的Socket编程 297
16.3 Socket开发流程 299
16.4基于WinInet类的应用程序设计 301
16.4.1 WinInet开发简介 301
16.4.2 CInternetSession类 302
16.4.3 CInternetConnection类 303
16.4.4 CInternetFile类 303
16.4.5 WinInet开发 303
16.5小结 306
16.6习题 306
第17章 多媒体编程(教学视频:27分钟) 309
17.1多媒体基础知识 309
17.1.1 Windows多媒体 309
17.1.2音频 309
17.1.3视频 310
17.1.4图像 310
17.2利用音频函数实现多媒体程序 311
17.2.1常用音频函数 311
17.2.2简单易用的MCI 312
17.2.3 MCI应用 313
17.3利用多媒体控件实现多媒体应用程序 315
17.4常见图片的显示方法 317
17.4 1位图资源 317
17.4.2其他格式图片的显示 319
17.4.3图片显示实例 320
17.5小结 322
17.6习题 322
第4篇 项目开发实战案例 326
第18章 图书管理系统的实现(教学视频:62分钟) 326
18.1概述 326
18.2需求分析与系统设计 327
18.2.1需求分析与可行性研究 327
18.2.2系统设计分析 328
18.3数据库设计 328
18.3.1需求分析 328
18.3.2概念设计 328
18.3.3数据库构建 329
18.4各模块设计 330
18.4.1系统窗体模块组成 330
18.4.2用户登录模块的实现 331
18.4.3用户主界面的实现 333
18.4.4书籍管理模块的实现 335
18.4.5读者管理功能模块的实现 341
18.4.6图书借阅和归还模块的实现 347
18.4.7读者服务模块的实现 351
18.4.8信息查询模块的实现 354
18.5系统测试 357
18.5.1测试策略分析 357
18.5.2模块化测试 357
18.6小结 360
第19章 简单电子邮件的客户端实现(教学视频:32分钟) 361
19.1概述 361
19.2电子邮件协议分析与系统设计 362
19.2.1邮件的传输 362
19.2.2 SMTP协议分析 363
19.2.3 POP3协议分析 364
19.3电子客户端系统设计分析 364
19.3.1邮件的发送 365
19.3.2邮件的接收 365
19.3.3系统设计模型 365
19.4各模块设计 366
19.4.1 JMail组件的使用 366
19.4.2系统窗体组成 367
19.4.3发信模块设计 368
19.4.4收信模块设计 372
19.5系统测试 376
19.5.1系统测试分析 376
19.5.2发信模块测试 377
19.5.3收信模块测试 378
19.6小结 379