《Visual C++编程宝典 十年典藏版》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:刘锐宁,李伟明,梁水编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2011
  • ISBN:9787115236029
  • 页数:694 页
图书介绍:本书书共5篇,在内容上全面超越目前简单的实战类图书,在各章中穿插讲解实战开发技巧。

第1篇 技能学习篇 4

第1章 初窥门径——Visual C++集成开发环境 4

1.1 本章学习任务 4

1.2 Visual C++概述 4

1.3 神兵属性——Visual C++集成开发环境 4

1.3.1 开发环境布局 5

1.3.2 菜单 5

1.3.3 工具栏 11

1.3.4 工作区窗口 14

1.3.5 代码编辑器 16

1.3.6 输出窗口 17

1.4 要想学习好,技巧很重要 18

1.4.1 谁偷走了“Layout”菜单 18

1.4.2 菜单的竞聘上岗机制(“Build”菜单和“Debug”菜单) 19

1.4.3 彻底删除类的方法 19

1.4.4 让自动提示功能更听话 20

1.4.5 当类向导中找不到要处理的消息 20

1.4.6 代码凌乱不用愁 21

1.5 编程初体验——第一个简单程序的创建 21

1.5.1 创建工程 21

1.5.2 界面设计 23

1.5.3 代码编辑 24

1.5.4 运行及发布 24

1.5.5 发布应用程序 24

1.6 实战检验 25

1.7 疑难解惑 26

1.7.1 显示函数的参数类型 26

1.7.2 管理多个工程 26

1.7.3 在发行版本中调试 26

1.8 精彩回顾 27

第2章 求知问道——走进C++语言基础 30

2.1 本章学习任务 30

2.2 语言要素要学好 30

2.2.1 交通指示牌——关键字 30

2.2.2 名片的制作规定——标识符命名规则 31

2.2.3 常量 32

2.2.4 变量 35

2.3 编码规范要记牢 36

2.3.1 注释的合理使用 36

2.3.2 工整的代码来自于缩进 38

2.3.3 换行使代码更清晰 39

2.4 数据类型不可少 39

2.4.1 数值类型 39

2.4.2 字符类型 41

2.4.3 非此即彼——布尔类型 41

2.4.4 排兵布阵——数组类型 42

2.4.5 常量集中营——枚举类型 45

2.4.6 团结就是力量——结构体类型 47

2.4.7 合租情缘——共用体类型 50

2.4.8 成败论英雄——指针类型 50

2.5 实战检验 53

2.6 疑难解惑 54

2.6.1 定义结构体的注意事项 54

2.6.2 结构体中的位域 54

2.6.3 使用共用体的注意事项 54

2.7 精彩回顾 55

第3章 虚心求教——运算符与表达式的应用 58

3.1 本章学习任务 58

3.2 运算符 58

3.2.1 重温四则运算 58

3.2.2 “=”的新用途 62

3.2.3 关系源自比较 64

3.2.4 逻辑出真假 65

3.2.5 增减有捷径 66

3.2.6 位运算 68

3.2.7 字节长度可计算 72

3.2.8 堆空间的开辟释放 73

3.3 文明人应讲秩序——结合性与优先级 74

3.4 表达式 76

3.4.1 逗号表达式的应用 76

3.4.2 三目元表达式 77

3.5 实战检验 78

3.5.1 使用条件运算符判断奇偶数 78

3.5.2 数鸭子问题求解 79

3.6 疑难解惑 79

3.6.1 经验——位运算符的妙用 79

3.6.2 疑惑——逗号表达式的存在感 80

3.6.3 当心——修改地址引起的内存泄露 80

3.7 精彩回顾 80

第4章 掌控天下——控制流程语句 84

4.1 本章学习任务 84

4.2 语句概述 84

4.2.1 语句的构成 84

4.2.2 复合语句 85

4.3 选择结构程序设计语句 87

4.3.1 二者不可得兼——if语句 87

4.3.2 维纳斯的选择——多条件判断的switch语句 90

4.4 循环结构程序设计语句 94

4.4.1 当循环语句while 94

4.4.2 直到循环语句do while 95

4.4.3 for语句 96

4.5 跳转语句 99

4.5.1 continue语句跳出本次循环 99

4.5.2 定点射击——goto语句 100

4.5.3 用于返回数据的return语句 101

4.5.4 exit语句 102

4.6 实战检验 102

4.6.1 名次问题求解 103

4.6.2 李白喝酒问题求解 104

4.7 疑难解惑 104

4.7.1 “=”的陷阱 104

4.7.2 switch语句中的障眼法 105

4.7.3 失效的goto语句 106

4.8 精彩回顾 106

第5章 程序中的公交车——函数的使用 110

5.1 本章学习任务 110

5.2 函数概述 110

5.2.1 函数的定义 110

5.2.2 函数的调用 112

5.3 函数的参数设置 114

5.3.1 与生俱来的参数默认值 114

5.3.2 各显神通的参数传递方式 115

5.3.3 组团传递(函数如何传递数组参数) 117

5.3.4 原来省略号也是参数 121

5.3.5 不可修改的const参数 122

5.4 动态覆盖——函数的重载 122

5.4.1 重载函数的应用 122

5.4.2 定义重载函数的注意事项 124

5.5 疑似鬼撞墙——函数递归调用 125

5.6 一种快捷方式——函数指针 127

5.7 实战检验 128

5.7.1 空瓶换饮料问题求解 128

5.7.2 小球称重问题求解 129

5.8 疑难解惑 131

5.8.1 孰是孰非——引用与指针的优劣 131

5.8.2 从定义数组引用得到的启发 131

5.8.3 隐身术的揭秘——隐藏重载函数 132

5.9 精彩回顾 133

第6章 上帝创世——面向对象程序设计 136

6.1 本章学习任务 136

6.2 面向对象程序设计概述 136

6.3 关于类和对象的分析 137

6.3.1 物种起源——类的定义 137

6.3.2 自我防护——类对成员的保护措施 139

6.3.3 类的实例化——对象 140

6.4 构造函数和析构函数解析 141

6.4.1 构造函数 141

6.4.2 析构函数 145

6.5 静态成员和静态方法 146

6.6 类是如何继承的 148

6.6.1 血脉的延续——单继承 148

6.6.2 适者生存——多继承 151

6.6.3 虚方法 152

6.6.4 抽象画的理解——虚继承 155

6.7 实战检验 157

6.7.1 目录的创建和删除 157

6.7.2 光驱的弹出和回退 158

6.8 疑难解惑 160

6.8.1 构造函数默认值陷阱 160

6.8.2 构造函数中的常量赋值 160

6.8.3 子类中的方法与父类中的方法同名 160

6.9 精彩回顾 162

第7章 登堂入室——全面了解对话框 164

7.1 本章学习任务 164

7.2 对话框的常用操作 164

7.2.1 创建对话框资源 165

7.2.2 显示对话框 166

7.3 对话框的属性介绍 171

7.4 在对话框中操作控件 175

7.4.1 添加控件的方法 175

7.4.2 复制和删除控件 175

7.4.3 调整控件的大小 176

7.4.4 对齐控件 176

7.4.5 为控件关联变量 178

7.5 为对话框添加成员变量和成员函数 179

7.5.1 添加对话框成员变量的方法 180

7.5.2 添加成员函数 180

7.5.3 添加消息处理函数 180

7.6 使用消息对话框确认操作 181

7.7 Windows通用对话框的简单调用 183

7.7.1 找到文件的家——“打开”对话框 183

7.7.2 顺序搜索文字位置——“查找”对话框 184

7.7.3 个性字体博览会——“字体”对话框 186

7.7.4 让世界充满色彩——“颜色”对话框 188

7.7.5 屏幕和图书间的纽带——“打印”对话框 189

7.8 实战检验 192

7.8.1 屏幕保护程序的制作 192

7.8.2 屏幕万花筒的实现 194

7.9 疑难解惑 196

7.9.1 “打开”对话框的命运双生子——另存为文件的默认路径 196

7.9.2 查找的进一步延伸——全部替换操作 197

7.10 精彩回顾 198

第8章 常规装扮——工具箱中的常用控件 200

8.1 本章学习任务 200

8.2 工具箱——控件面板介绍 200

8.3 窗体中的广告牌——静态文本控件 201

8.3.1 色彩鲜艳的广告牌 201

8.3.2 镂空背景的广告牌 202

8.3.3 广告牌的机关——模拟按钮单击事件 203

8.4 电子版的笔记本——编辑框控件 204

8.4.1 密码是安全的保证 204

8.4.2 可远观而不可亵玩 205

8.4.3 回车可换行 205

8.4.4 编辑框的职责——获取/设置编辑框文本 206

8.5 一锤定音——按钮控件 206

8.5.1 按钮中的图像操作 206

8.5.2 鼠标一点点——按钮单击事件 207

8.6 调查问卷中的常客——复选框和单选按钮 208

8.6.1 初始化选择——设置复选框的选中状态 208

8.6.2 资料读入——获得选中复选框中的文本 209

8.6.3 控件也分帮——单选按钮的分组 210

8.7 我型我秀——图像控件 211

8.7.1 秀出图像千般姿态 211

8.7.2 图像控件大变形 211

8.7.3 图像控件的同化 212

8.7.4 位图的动态加载 213

8.8 存储字符串的盒子——列表框控件 214

8.8.1 列表项的插入 214

8.8.2 列表框的变异 215

8.9 编辑框和列表框的组合——组合框控件 216

8.9.1 “Data”选项卡的秘密 217

8.9.2 列表显示区域的伸缩调整 217

8.9.3 龙生九子——组合框的不同显示风格 218

8.9.4 似曾相识——组合框的数据插入 218

8.10 驱散等待中的枯燥——进度条控件 219

8.10.1 刚柔并济——两种风格的进度条 219

8.10.2 Loading——以进度条驱散枯燥 219

8.11 斯诺克中的记分牌——滑标控件 221

8.11.1 滑标控件的操作训练 221

8.11.2 模拟颜色调配 221

8.12 昨天今天明天——时间控件 224

8.12.1 时间控件的格式选择 224

8.12.2 时间我做主——修改系统时间 224

8.13 实战检验 226

8.13.1 设计颜色选择组合框控件 226

8.13.2 渐变颜色的进度条 228

8.14 疑难解惑 229

8.14.1 在组合框的指定列表位置插入数据 230

8.14.2 方便用户的操作——默认选项设置 230

8.15 精彩回顾 231

第9章 高端设备——高级控件 234

9.1 本章学习任务 234

9.2 画家的收藏夹——图像列表控件 234

9.2.1 收藏夹的创建 234

9.2.2 100%临摹 236

9.3 数据格式控制好帮手——列表视图控件 237

9.3.1 列表视图控件的4种显示风格 237

9.3.2 图标登录窗口设计 238

9.3.3 给列表化化妆 240

9.3.4 数据的报表显示 242

9.4 层次分明——树视图控件 244

9.4.1 树控件的装修 244

9.4.2 树视图的分层显示 245

9.4.3 树节点的变化 247

9.4.4 树节点的复选功能 247

9.5 扩展空间——标签控件 251

9.5.1 属性训练营 251

9.5.2 层峦叠翠——多页面的窗体 253

9.5.3 门面的装饰——图标标签控件 255

9.6 实战检验 256

9.6.1 热点效果的列表视图控件 256

9.6.2 绘制三态效果树控件 258

9.7 疑难解惑 262

9.7.1 修改树视图控件的文本颜色 262

9.7.2 绘制节点前连线的颜色 262

9.8 精彩回顾 264

第10章 天下三分——菜单、工具栏和状态栏 266

10.1 本章学习任务 266

10.2 半数天下归于魏——菜单 266

10.2.1 招兵买马——菜单资源设计 266

10.2.2 训练有素——菜单项的命令处理 267

10.2.3 厉兵秣马——动态创建菜单 269

10.2.4 王牌进化——绘制菜单背景 271

10.3 民心向背在于蜀——工具栏 276

10.3.1 招兵买马——工具栏资源设计 276

10.3.2 训练有素——工具栏项的命令处理 277

10.3.3 厉兵秣马——动态创建工具栏 278

10.3.4 王牌进化——设置工具栏提示 282

10.4 独树一帜当属吴——状态栏 283

10.4.1 厉兵秣马——动态创建状态栏 283

10.4.2 王牌进化——绘制状态栏背景 284

10.5 实战检验 287

10.6 疑难解惑 287

10.7 精彩回顾 288

第11章 军需官的功劳簿——程序中的数据库操作 290

11.1 本章学习任务 290

11.2 史记新编——数据库的发展 290

11.3 新的起点——ADO技术 291

11.3.1 ADO起源 291

11.3.2 在工程中使用ADO技术 291

11.4 掌控ADO对象的使用 291

11.4.1 初始化COM环境 292

11.4.2 导入ADO动态链接库 292

11.4.3 定义ADO智能指针 293

11.4.4 数据库连接字符串的设置 293

11.4.5 遍历记录集中数据 294

11.4.6 数据库管理操作 296

11.4.7 对记录集数据进行检索 300

11.5 山中小径——使用SQL语句操作数据库 302

11.6 木牛流马——ActiveX控件 304

11.6.1 数据之源——ADO Data控件 304

11.6.2 表格搭档——DataGrid控件 306

11.7 实战检验 308

11.8 疑难解惑 309

11.9 精彩回顾 309

第12章 力挽狂澜——程序调试 312

12.1 本章学习任务 312

12.2 纸上谈兵——断点设置浅谈 312

12.2.1 选择目标——普通断点 312

12.2.2 追踪线索——断点跟踪 313

12.2.3 形式判断——条件断点 314

12.2.4 掌控资料——数据断点 316

12.2.5 行动信号——消息断点 317

12.3 攻城器械——调试窗口 317

12.3.1 使用“Watch”窗口查看变量值 318

12.3.2 使用“Call Stack”窗口查看函数的调用 319

12.3.3 使用“Memory”窗口查看对象的内存信息 319

12.3.4 使用“Variables”窗口查看变量信息 320

12.3.5 使用“Registers”窗口查看寄存器信息 320

12.3.6 使用“Disassembly”窗口查看反汇编代码 322

12.4 初露锋芒——实战调试 322

12.4.1 在调试时动态修改变量的值 322

12.4.2 调试在循环中的应用 323

12.5 实战检验 324

12.6 疑难解惑 324

12.7 精彩回顾 325

第2篇 范例演练篇 330

第13章 运筹帷幄——生活中的算法 330

13.1 迷你星座查询的实现 330

13.1.1 范例功能演示 330

13.1.2 开发思路指引 330

13.1.3 专家难点解析 331

13.1.4 设计过程详解 333

13.1.5 范例开发手记 335

13.1.6 进阶与提高 335

13.2 设计双色球彩票选号器 336

13.2.1 范例功能演示 336

13.2.2 开发思路指引 336

13.2.3 专家难点解析 336

13.2.4 设计过程详解 337

13.2.5 范例开发手记 339

13.2.6 进阶与提高 340

13.3 零存整取的存款利息 340

13.3.1 范例功能演示 340

13.3.2 开发思路指引 341

13.3.3 专家难点解析 341

13.3.4 设计过程详解 342

13.3.5 范例开发手记 343

13.3.6 进阶与提高 343

13.4 个人所得税如何计算 344

13.4.1 范例功能演示 344

13.4.2 开发思路指引 344

13.4.3 专家难点解析 345

13.4.4 设计过程详解 345

13.4.5 范例开发手记 347

13.4.6 进阶与提高 347

13.5 房屋贷款的计算方式 348

13.5.1 范例功能演示 348

13.5.2 开发思路指引 348

13.5.3 专家难点解析 349

13.5.4 设计过程详解 350

13.5.5 范例开发手记 352

13.5.6 进阶与提高 352

第14章 效率生活——工作中的小工具 354

14.1 金额大小写的转换 354

14.1.1 范例功能演示 354

14.1.2 开发思路指引 354

14.1.3 专家难点解析 354

14.1.4 设计过程详解 355

14.1.5 范例开发手记 357

14.1.6 进阶与提高 358

14.2 模拟石英钟 358

14.2.1 范例功能演示 358

14.2.2 开发思路指引 358

14.2.3 专家难点解析 359

14.2.4 设计过程详解 360

14.2.5 范例开发手记 362

14.2.6 进阶与提高 362

14.3 制作请假时间计算器 362

14.3.1 范例功能演示 362

14.3.2 开发思路指引 363

14.3.3 专家难点解析 363

14.3.4 设计过程详解 364

14.3.5 范例开发手记 366

14.3.6 进阶与提高 367

14.4 清除“钉子文件” 367

14.4.1 范例功能演示 367

14.4.2 开发思路指引 367

14.4.3 专家难点解析 368

14.4.4 设计过程详解 369

14.4.5 范例开发手记 373

14.4.6 进阶与提高 373

14.5 定时关机能解忧 374

14.5.1 范例功能演示 374

14.5.2 开发思路指引 374

14.5.3 专家难点解析 374

14.5.4 设计过程详解 376

14.5.5 范例开发手记 378

14.5.6 进阶与提高 378

第15章 控件经典——编程中的好帮手 380

15.1 七彩编辑框 380

15.1.1 范例功能演示 380

15.1.2 开发思路指引 380

15.1.3 专家难点解析 380

15.1.4 设计过程详解 381

15.1.5 范例开发手记 382

15.1.6 进阶与提高 382

15.2 显示系统盘符组合框 382

15.2.1 范例功能演示 382

15.2.2 开发思路指引 383

15.2.3 专家难点解析 383

15.2.4 设计过程详解 383

15.2.5 范例开发手记 384

15.2.6 进阶与提高 384

15.3 QQ抽屉控件很实用 385

15.3.1 范例功能演示 385

15.3.2 开发思路指引 385

15.3.3 专家难点解析 386

15.3.4 设计过程详解 386

15.3.5 范例开发手记 392

15.3.6 进阶与提高 392

15.4 迷你电子时钟控件 393

15.4.1 范例功能演示 393

15.4.2 开发思路指引 393

15.4.3 专家难点解析 394

15.4.4 设计过程详解 394

15.4.5 范例开发手记 396

15.4.6 进阶与提高 396

15.5 超链接控件 397

15.5.1 范例功能演示 397

15.5.2 开发思路指引 397

15.5.3 专家难点解析 398

15.5.4 设计过程详解 398

15.5.5 范例开发手记 399

15.5.6 进阶与提高 400

第16章 时尚绘画——图像相关工具 402

16.1 自定义云型窗体 402

16.1.1 范例功能演示 402

16.1.2 开发思路指引 402

16.1.3 专家难点解析 402

16.1.4 设计过程详解 403

16.1.5 范例开发手记 404

16.1.6 进阶与提高 405

16.2 闪烁的彩虹文字 405

16.2.1 范例功能演示 405

16.2.2 开发思路指引 406

16.2.3 专家难点解析 406

16.2.4 设计过程详解 406

16.2.5 范例开发手记 407

16.2.6 进阶与提高 408

16.3 制作宝宝涂鸦工具 408

16.3.1 范例功能演示 408

16.3.2 开发思路指引 409

16.3.3 专家难点解析 409

16.3.4 设计过程详解 410

16.3.5 范例开发手记 413

16.3.6 进阶与提高 414

16.4 模拟开心农场 415

16.4.1 范例功能演示 415

16.4.2 开发思路指引 415

16.4.3 专家难点解析 415

16.4.4 设计过程详解 416

16.4.5 范例开发手记 418

16.4.6 进阶与提高 418

16.5 截图好帮手 418

16.5.1 范例功能演示 418

16.5.2 开发思路指引 419

16.5.3 专家难点解析 419

16.5.4 设计过程详解 420

16.5.5 范例开发手记 423

16.5.6 进阶与提高 424

第17章 娱乐先锋——轻松任我行 426

17.1 让幸运转盘转起来 426

17.1.1 范例功能演示 426

17.1.2 开发思路指引 426

17.1.3 专家难点解析 426

17.1.4 设计过程详解 426

17.1.5 范例开发手记 429

17.1.6 进阶与提高 430

17.2 抓不住的兔子 430

17.2.1 范例功能演示 430

17.2.2 开发思路指引 430

17.2.3 专家难点解析 431

17.2.4 设计过程详解 431

17.2.5 范例开发手记 432

17.2.6 进阶与提高 433

17.3 蝴蝶飞飞飞 433

17.3.1 范例功能演示 433

17.3.2 开发思路指引 433

17.3.3 专家难点解析 434

17.3.4 设计过程详解 434

17.3.5 范例开发手记 436

17.3.6 进阶与提高 436

17.4 快来打地鼠 436

17.4.1 范例功能演示 436

17.4.2 开发思路指引 437

17.4.3 专家难点解析 437

17.4.4 设计过程详解 437

17.4.5 范例开发手记 440

17.4.6 进阶与提高 440

17.5 小蛇长得快 440

17.5.1 范例功能演示 440

17.5.2 开发思路指引 441

17.5.3 专家难点解析 441

17.5.4 设计过程详解 441

17.5.5 范例开发手记 447

17.5.6 进阶与提高 447

第3篇 项目实战篇 452

第18章 天涯若比邻——通信新干线 452

18.1 通信新干线概述 452

18.1.1 开发背景 452

18.1.2 需求分析 452

18.1.3 功能结构图 452

18.2 数据库设计 453

18.2.1 数据表的建立 453

18.2.2 数据库操作流程 454

18.3 技术攻关 455

18.3.1 选项卡技术 455

18.3.2 绘制对话框的四周 456

18.4 通信新干线主程序模块 460

18.5 数据库连接模块 474

18.6 数据备份模块 477

18.7 数据还原模块 479

18.8 数据初始化模块 481

18.9 程序调试与错误处理 483

18.9.1 使用try...catch捕捉错误 483

18.9.2 数据库记录指针的正确使用 484

18.10 开发总结 485

第19章 一指定乾坤——使用指纹来考勤 488

19.1 使用指纹来考勤概述 488

19.1.1 开发背景 488

19.1.2 需求分析 488

19.1.3 功能结构图 488

19.2 技术攻关 489

19.2.1 指纹头驱动与开发包的安装 489

19.2.2 指纹头开发控件的使用 490

19.3 公共类设计 491

19.4 主窗体设计 495

19.5 用户登录模块设计 497

19.6 用户管理模块设计 498

19.7 部门管理模块设计 500

19.8 人员信息管理模块设计 502

19.9 考勤模板模块设计 507

19.10 指纹登记模块设计 509

19.11 考勤管理模块设计 512

19.12 考勤汇总查询模块设计 516

19.13 程序调试与错误处理 518

19.14 开发总结 519

第20章 女猎手的猫头鹰——上机课中的屏幕监控专家 522

20.1 屏幕监控专家概述 522

20.1.1 开发背景 522

20.1.2 需求分析 522

20.1.3 功能结构图 522

20.2 技术攻关 523

20.3 服务端应用程序模块 524

20.3.1 创建系统托盘技术 525

20.3.2 屏幕截图技术 528

20.3.3 多播服务端发送技术 533

20.4 客户端应用程序模块 540

20.5 开发手记 544

20.5.1 使用UDP发送数据 544

20.5.2 发送广播数据 547

20.5.3 分包算法优化 548

20.6 程序调试与错误处理 549

20.7 开发总结 552

第21章 听声辨位——让计算机听懂声音 554

21.1 让计算机听懂声音概述 554

21.1.1 开发背景 554

21.1.2 需求分析 554

21.1.3 功能结构图 554

21.2 技术攻关 555

21.2.1 开发包的安装与使用 555

21.2.2 声音特征采集 556

21.3 让计算机听懂声音主程序 559

21.4 语音朗读模块 560

21.5 口型朗读模块 562

21.6 朗读配置模块 567

21.7 音频流朗读模块 572

21.8 语音识别模块 575

21.9 程序调试与错误处理 577

21.9.1 未初始化接口和库错误处理 577

21.9.2 正确设置字符数组的长度 578

21.10 开发总结 579

第4篇 商业系统篇 584

第22章 工作速递——企业内部通信系统 584

22.1 企业内部通信系统概述 584

22.1.1 系统分析 584

22.1.2 总体设计 584

22.1.3 系统功能结构 586

22.1.4 开发环境 587

22.2 数据库设计 587

22.2.1 数据表的建立 587

22.2.2 数据库操作流程 588

22.3 公共模块设计 589

22.4 服务端 595

22.4.1 服务端主窗体模块 595

22.4.2 服务端账户管理模块 605

22.4.3 服务端系统组织结构管理模块 614

22.5 客户端 616

22.5.1 客户端主窗体模块 616

22.5.2 客户端发送消息模块 660

22.5.3 添加联系人模块 681

22.5.4 客户端登录模块 685

22.5.5 系统设置模块 687

22.5.6 修改密码模块 690

22.6 程序调试与错误处理 692

22.7 开发总结 693