《Visual C++. NET实用案例教程》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:崔勇编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2003
  • ISBN:730206749X
  • 页数:359 页
图书介绍:本书以大量实例为基础,着重从三个方面,即MFC、托管C++和COM对Visual C++.NET做了较为全面的介绍。

第1章 绪论 1

1.1 VC++.NET 概述 1

1.2 VC++.NET 的新特性 2

1.2.1 安装 2

1.2.2 基本类库 2

1.2.3 属性化编程 2

1.2.4 集成开发环境 2

1.2.5 托管 C++ 4

1.3 为什么要学习 VC++.NET 4

1.4 学习 VC++.NET 的方法 4

1.5 学习 VC++.NET 的几大禁忌 5

1.5.1 半途而废 5

1.5.2 “大全”的危害 6

1.5.3 没有基础 6

案例1-1 基于 MFC 的 Visual C++.NET 应用程序框架 6

第2章 C++语言基础 14

2.1 C++与 C 语言的关系 14

2.1.1 C 语言的特点 14

2.1.2 C 语言的局限 15

2.1.3 C++语言的特点 15

2.1.4 C++程序结构 15

案例2-1 创建一个最简单的 Win32应用 15

2.2 引用与函数的单向值传递 19

2.2.1 引用 19

2.2.2 引用与指针 21

2.2.3 函数的单向值传递 24

2.2.4 指针与引用用作函数参数 26

2.3 类与对象 28

2.3.1 类说明 28

2.3.2 对象说明 29

2.3.3 对象的使用 29

2.3.4 构造函数与析构函数 31

2.4 封装 32

2.4.1 封装的概念 32

2.4.2 封装的意义 32

2.5 继承 33

2.5.1 继承的概念 33

2.5.2 继承的实现 34

2.5.3 继承的应用 35

2.5.4 关于继承的几点说明 38

2.6 多态 39

2.6.1 多态性 39

2.6.2 编译时的多态性 40

2.6.3 虚函数 42

2.6.4 运行时的多态性 42

2.6.5 虚函数的访问权限 43

2.6.6 纯虚函数 44

2.6.7 赋值 45

案例2-2 虚拟的绘图应用 45

第3章 浅析微软的 MFC 51

3.1 Win32应用 51

3.1.1 Win32程序框架 51

3.1.2 Win32程序设计基础 52

3.2 MFC 结构 62

3.2.1 MFC 概述 62

3.2.2 MFC 结构体系 63

3.3 MFC 的消息机制 64

3.3.1 系统消息 64

案例3-1 在 MFC 应用框架中实现简单的系统消息 64

3.3.2 窗口消息 68

3.3.3 自定义消息 69

案例3-2 完成自定义消息的定义与处理 70

3.3.4 消息映射 72

3.3.5 几处变化 72

3.4 MFC 的基石 73

3.4.1 文档视图结构应用框架 73

3.4.2 面向对象的 C++思想 77

3.4.3 文档与视图通信 78

第4章 对话框应用 80

4.1 对话框应用概述 80

4.2 控件及其应用 80

4.2.1 简单控件的使用 81

案例4-1 创建使用简单控件的基于对话框的应用程序 81

4.2.2 复杂控件的使用 91

案例4-2 使用复杂控件 91

4.2.3 控件的使用原则 99

案例4-3 使用对话框与控件开发一个磁盘空间监视器 99

第5章 MFC 的文档与视图 109

5.1 理解文档与视图 109

5.1.1 文档与视图的关系 109

5.1.2 理解单文档 109

5.1.3 理解多文档 114

5.2 拆分窗口 117

5.2.1 拆分窗口 117

5.2.2 使用拆分窗口的意义 119

5.2.3 拆分窗口的实现 119

案例5-1 实现动态拆分窗口 120

案例5-2 实现静态拆分窗口 123

5.3 菜单 127

5.3.1 菜单资源 127

5.3.2 菜单项的映射与处理 129

5.3.3 更新命令用户接口消息 131

5.3.4 多个命令映射到同一入口函数 132

5.3.5 动态创建菜单 134

案例5-3 创建并使用动态菜单 134

5.4 工具栏 137

5.4.1 工具栏资源 137

5.4.2 工具栏编程 138

5.4.3 浮动工具栏编程 139

案例5-4 浮动工具栏应用 139

第6章 绘图 144

6.1 设备描述表(DC) 144

6.1.1 设备描述表 144

6.1.2 使用设备描述表 144

6.1.3 设备描述表分类 145

6.2 绘图对象 146

6.2.1 画笔 147

6.2.2 画刷 149

6.2.3 字体 152

6.2.4 区域 154

6.2.5 库存对象 155

6.2.6 其他绘图对象 156

6.3 映射模式 156

6.3.1 默认映射模式 MM_TEXT 156

6.3.2 与设备无关的映射模式 158

6.3.3 可变映射模式 159

6.3.4 坐标变换 162

案例6-1 确定鼠标是否点中矩形区域 162

6.4 函数 OnDraw 165

案例6-2 在客户区内绘制转动的轮子 166

第7章 输入与输出 176

7.1 概述 176

7.2 对话框 177

7.2.1 对话框资源 177

7.2.2 模式对话框与无模式对话框 178

7.2.3 创建模式对话框 179

案例7-1 使用一个模式对话框向应用程序输入文本信息 179

7.2.4 创建无模式对话框 182

案例7-2 使用无模式对话框向应用程序输入文本信息 183

7.2.5 公用对话框 185

7.3 属性页、属性表和属性向导 188

7.3.1 属性页与属性表 188

案例7-3 创建属性表 188

7.3.2 属性向导 194

7.4 鼠标与键盘 198

7.4.1 鼠标数据 198

案例7-4 在屏幕上拖动正方形 198

7.4.2 键盘信息 201

7.5 文件 204

7.5.1 文件概述 204

7.5.2 文档序列化 205

案例7-5 文档的读写 206

案例7-6 序列化对象 210

7.5.3 直接读写文件 214

7.5.4 灵活地使用 C 语言的文件操作函数 217

第8章 动态链接库 220

8.1 动态链接库概述 220

8.2 动态链接库基础 221

8.2.1 动态链接库函数的导入与导出 221

8.2.2 编译器对导入与导出的影响 221

8.2.3 隐式链接与显式链接 222

8.2.4 动态链接库入口点 223

8.2.5 客户程序如何寻找动态链接库 224

8.2.6 使用动态链接库的好处 225

8.3 使用 MFC 创建和使用动态链接库 225

8.3.1 创建扩展动态链接库 225

案例8-1 创建一个带有基本运算功能的扩展动态链接库 225

8.3.2 使用扩展动态链接库 228

案例8-2 使用扩展动态链接库完成简单的计算器应用 228

8.3.3 创建规则动态链接库 231

案例8-3 创建一个带有基本运算功能的规则动态链接库 232

8.3.4 使用规则动态链接库 235

案例8-4 使用规则动态链接库完成简单的计算器应用 235

8.3.5 通过显式链接使用动态链接库 236

案例8-5 通过显式链接使用规则动态链接库完成计算器应用 236

第9章 打印与打印预览 239

9.1 打印的实现 239

9.1.1 打印设备描述表与屏幕设备描述表 239

9.1.2 用 MFC 实现最简单的打印 240

案例9-1 使用 MFC 实现一个简单的设备无关的打印功能 240

9.2 使用 MFC 实现定制打印 242

9.2.1 使用 MFC 打印的内在机理 242

9.2.2 使用 MFC 打印预览的内在机理 244

案例9-2 实现多页打印 245

9.2.3 打印页眉和页脚 247

案例9-3 打印一份酒店便签 247

9.2.4 实现打印与显示不同 250

案例9-4 实现打印与显示的分离 250

第10章 数据库编程 257

10.1 数据库 257

10.1.1 关系型数据库模型 257

案例10-1 创建简单的 Access 数据库 257

10.1.2 数据库访问 261

10.1.3 数据源 261

案例10-2 创建数据库 BDB 的数据源 261

10.1.4 Visual C++.NET 的 ODBC 类 264

10.2 操纵数据库 264

10.2.1 建立数据库表与应用的连接 265

案例10-3(上) 创建 ODBC 数据库应用程序 265

10.2.2 完成数据库查询与修改操作 271

案例10-3(下) 完成对数据库的查询与修改 272

10.3 OLE DB、ADO 和 SQL 276

10.3.1 什么是 OLE DB 276

10.3.2 什么是 ADO 276

10.3.3 ADO 和 OLE DB 276

10.3.4 SQL 277

第11章 使用托管 C++进行.NET 编程 278

11.1 概述 278

11.1.1 托管 C++语言出现的背景 278

11.1.2 托管 C++与.NET 框架 279

11.1.3 使用托管 C++语言 279

11.2 理解.NET 框架 279

11.2.1 公共语言运行环境(CLR) 280

11.2.2 部件(assemblies) 281

11.2.3 元数据(metadata) 281

11.3 托管 C++语言基础 282

11.3.1 理解托管类型 282

11.3.2 值类型 283

11.3.3 垃圾收集类型(引用类型) 285

11.3.4 封箱(boxed)与拆箱(unboxed) 286

案例11-1 使用应用向导创建一个空的托管 C++应用 286

11.3.5 接口类型 289

11.3.6 数组 291

11.3.7 字符串 291

案例11-2 使用应用向导创建一个托管 C++项目 292

11.3.8 代理(delegate) 294

11.3.9 属性成员 295

11.3.10 对异常的处理 299

11.3.11 别针型指针 301

11.4 完整的托管应用程序 303

案例11-3 创建一个记事本应用程序 303

第12组 组件对象模型 320

12.1 概述 320

12.1.1 什么是 COM 320

12.1.2 为什么要用 COM 编写组件 321

12.1.3 学习 COM 之前的准备 321

12.2 学习 COM 所必须了解的概念 321

12.2.1 接口(interface) 321

12.2.2 组件 323

12.2.3 引用计数 324

12.2.4 全局惟一标识 GUID 324

12.2.5 返回值类型 HRESULT 325

12.2.6 类工厂(Class Factory) 328

12.2.7 服务器 329

12.2.8 注册表 329

12.2.9 客户端应用 329

12.3 创建一个“裸”COM 组件 329

12.3.1 创建过程 330

案例12-1 手工创建 COM 组件 330

12.3.2 调用 COM 组件的过程 344

12.3.3 创建 COM 组件客户 345

案例12-2 创建使用 BareCOM 组件的客户端应用 346

12.4 使用 ATL 创建实用的 COM 组件 348

12.4.1 模板简介 349

12.4.2 理解 ATL 351

12.4.3 代理占位模块与 DCOM 网络协议 353

12.4.4 使用 ATL 创建组件 353

案例12-3 使用 ATL 创建完成加法功能的组件 354

12.4.5 使用由 ATL 创建的组件 356

案例12-4 创建一个使用 SimpleObj 组件的客户应用 357