《你必须知道的204个Visual C++开发问题》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:范立锋,李世欣编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2010
  • ISBN:9787115226792
  • 页数:312 页
图书介绍:本书以问答的形式组织内容,讨论了学习或使用Visual C++的过程中经常遇到的一些问题。书中列出了C/C++用户经常问的300多个经典问题,并分别给出了正确的回答,而且结合代码示例阐明要点,为程序员提供了实践指南。

第1章 开发工具应用与调试 1

FAQ1.01 VC++工程中的项目文件都表示什么? 1

FAQ1.02 如何快速地规范代码的缩进格式? 2

FAQ1.03 如何使用工具的快捷键? 3

FAQ1.04 如何在编辑器中使用代码录制功能? 5

FAQ1.05 如何在一个工作区里管理多个工程? 6

FAQ1.06 如何显示在workspace中消失的类? 7

FAQ1.07 如何从其他文件中获取所需的资源? 7

FAQ1.08 如何恢复消失的成员函数提示功能? 9

FAQ1.09 Debug版本与Release版本之间的区别? 9

FAQ1.10 如何在Release状态下进行调试? 10

FAQ1.11 如何使用简单断点、数据断点、条件断点、消息断点调试程序? 11

FAQ1.12 如何清除程序中的所有断点? 12

FAQ1.13 如何向当前工程添加LIB文件? 14

FAQ1.14 如何查看变量信息和内存信息? 15

FAQ1.15 如何对指针数组进行调试? 15

第2章 Visual C++ 6.0编程基础 17

FAQ2.01 如何理解匈牙利命名法? 17

FAQ2.02 如何理解Windows编程中的句柄? 18

FAQ2.03 如何理解和使用回调函数? 19

FAQ2.04 内存泄漏是由哪些原因引起的? 21

FAQ2.05 如何使用const关键字? 21

FAQ2.06 如何使用纯虚函数? 23

FAQ2.07 GlobalAlloc()、malloc()和new()函数之间的区别? 24

FAQ2.08 如何使用typename关键字? 25

FAQ2.09 如何利用计数器调试无限循环? 26

FAQ2.10 如何理解指针与引用的区别? 27

FAQ2.11 如何动态分配二维数组? 28

FAQ2.12 如何巧妙运用预处理指令与宏定义? 29

FAQ2.13 如何声明两个互为成员的类? 30

FAQ2.14 如何利用友元函数访问类中私有的成员变量? 31

FAQ2.15 如何理解和使用volatile关键字? 32

FAQ2.16 如何使用结构体? 33

FAQ2.17 如何实现int、char*、float与CString之间的转换? 34

FAQ2.18 如何使用CString分割并输出子字符串? 35

FAQ2.19 如何在VC++中将一个类彻底删除? 37

FAQ2.20 如何使用Unicode? 38

FAQ2.21 如何获得应用程序的实例句柄? 39

FAQ2.22 如何编写Windows应用程序的入口函数? 39

第3章 MFC 43

FAQ3.01 VC++中的WIN32与MFC的区别? 43

FAQ3.02 如何理解文档、视图、框架间的关系以及消息传递规律? 44

FAQ3.03 如何判断某个句柄是否关联一个窗口? 45

FAQ3.04 如何在运行时判断某个对象是否是指定的类型? 46

FAQ3.05 MFC中常用的调试函数有哪些? 46

FAQ3.06 MFC中基本的应用程序信息和管理函数有哪些? 48

FAQ3.07 如何判断两个时间段的差距? 49

FAQ3.08 如何获得MDI应用程序的每个视图指针? 50

FAQ3.09 如何为dll文件生成lib文件? 51

FAQ3.10 如何在MFC中调用C#做的DLL? 52

FAQ3.11 如何实现SDI与MDI的转换? 53

FAQ3.12 如何使用安全数组? 54

FAQ3.13 如何将工程中的部分资源加到另一个工程中? 55

FAQ3.14 如何获得完整的文件路径和文件名? 55

FAQ3.15 如何让多个窗口消息共享同一个消息处理函数? 57

FAQ3.16 如何在程序中捕捉CException类的异常? 58

第4章 Visual C++ 6.0控件的使用 60

FAQ4.01 如何设置控件是否可用? 60

FAQ4.02 如何将某个控件对象关联到对话框中的控件资源? 61

FAQ4.03 如何遍历控件? 62

FAQ4.04 如何为静态控件声明成员变量? 63

FAQ4.05 如何设置静态文本控件的背景颜色和字体颜色? 64

FAQ4.06 如何使用Picture控件显示图片? 65

FAQ4.07 如何在CButton按钮中显示位图? 67

FAQ4.08 如何限制编辑框输入的字符? 68

FAQ4.09 如何设置编辑框多行显示? 69

FAQ4.10 如何使用ComboBox控件列举磁盘目录? 70

FAQ4.11 如何在ListBox控件间实现数据交换? 71

FAQ4.12 如何使用时间控件修改系统时间? 73

FAQ4.13 如何使用CImageList绘制图标? 74

FAQ4.14 如何制作带图标的标签控件? 76

FAQ4.15 如何为ListControl控件添加列标题、行和列? 77

FAQ4.16 如何实现ListControl控件的排序? 79

FAQ4.17 如何让ListControl控件显示有网格的报表形式? 80

FAQ4.18 如何为树型控件添加数据? 81

FAQ4.19 如何避免CRichEditCtrl中出现中文乱码? 83

第5章 用户界面设计 84

FAQ5.01 如何生成任意形状的窗体? 84

FAQ5.02 如何生成半透明窗体? 86

FAQ5.03 如何获得鼠标指针在窗口中的位置? 87

FAQ5.04 如何使创建的窗口位于所有窗口的最前端? 88

FAQ5.05 如何拖动没有标题栏的窗体? 90

FAQ5.06 如何改变MDI窗口框架的颜色? 91

FAQ5.07 如何修改对话框的图标? 92

FAQ5.08 如何根据图片大小显示窗体? 93

FAQ5.09 如何实现屏幕滚动字幕? 95

FAQ5.10 如何在窗体中实现动画效果? 96

FAQ5.11 如何制作随机更换背景的窗体? 98

FAQ5.12 如何实现对窗体的继承? 99

FAQ5.13 如何在文档视图的工程中加入启动画面? 100

FAQ5.14 如何动态添加和删除菜单? 102

FAQ5.15 如何创建级联菜单? 103

FAQ5.16 如何制作具有提示功能的工具栏? 105

FAQ5.17 如何制作弹出鼠标提示窗口? 106

FAQ5.18 如何制作类似QQ程序的界面? 107

FAQ5.19 如何调用Office助手? 109

第6章 图形图像 111

FAQ6.01 如何绘制弧线? 111

FAQ6.02 如何制作屏幕保护程序? 112

FAQ6.03 如何制作透明图片? 115

FAQ6.04 如何通过位图文件获得位图的大小? 116

FAQ6.05 如何获取屏幕上指定坐标的颜色? 118

FAQ6.06 如何用指定的颜色填充指定区域? 119

FAQ6.07 如何理解颜色渐变算法? 120

FAQ6.08 如何制作一个基于DirectX的截图程序? 122

FAQ6.09 物理坐标与逻辑坐标的区别是什么?它们之间如何转换? 128

FAQ6.10 如何画箭头? 129

FAQ6.11 如何实现单击一张图片链接到相应的网页? 130

FAQ6.12 如何通过鼠标实现图片的局部放大与缩小? 132

FAQ6.13 如何显示JPEG图片? 135

FAQ6.14 如何将截取的图片复制到剪贴板? 137

FAQ6.15 如何实现位图的渐入/渐出显示? 138

FAQ6.16 如何制作闪屏的图像特效? 140

FAQ6.17 如何让图像具有百叶窗的显示效果? 142

FAQ6.18 如何查看打印机当前的打印任务? 143

第7章 操作系统相关的技术 146

FAQ7.01 如何获得当前操作系统的版本号? 146

FAQ7.02 如何格式化磁盘? 149

FAQ7.03 如何将FAT32转化为NTFS? 150

FAQ7.04 如何对屏幕的分辨率进行控制? 151

FAQ7.05 如何隐藏和显示桌面的文件? 154

FAQ7.06 如何向应用程序中添加快捷键? 156

FAQ7.07 如何获得当前本机的用户名? 158

FAQ7.08 如何修改计算机的用户名? 159

FAQ7.09 如何关闭、重启和注销计算机? 159

FAQ7.10 如何对注册表中的键实现增、删、改、查? 161

FAQ7.11 如何理解线程与进程的关系? 165

FAQ7.12 如何创建和终止一个线程? 166

FAQ7.13 如何获得系统中的所有进程? 167

FAQ7.14 如何启动和关闭其他的应用程序? 169

FAQ7.15 如何禁止程序重复执行? 171

FAQ7.16 如何编写需要密码验证的应用程序? 172

FAQ7.17 如何理解WIN32中全局钩子的运行机制? 174

FAQ7.18 如何设定线程的相对优先级? 175

FAQ7.19 如何通过内存映像文件在进程间交换数据? 176

第8章 文件管理 179

FAQ8.01 如何创建文件? 179

FAQ8.02 如何创建多级目录? 180

FAQ8.03 如何打开文件? 182

FAQ8.04 如何获取文件的属性? 183

FAQ8.05 如何获取文件的图标? 185

FAQ8.06 如何将文件删除到回收站? 186

FAQ8.07 如何实现文件过滤器? 187

FAQ8.08 如何复制和删除文件? 189

FAQ8.09 如何列举目录下的所有文件? 191

FAQ8.10 如何查找某个特定文件夹下的指定文件? 193

FAQ8.11 如何创建临时文件? 195

FAQ8.12 如何在VC++中使用fopen()函数来读写文件? 196

FAQ8.13 如何在txt文件中逐行读取数据? 198

FAQ8.14 如何读写XML中的数据? 199

FAQ8.15 如何编写文件分割工具? 200

FAQ8.16 如何对INI文件进行读取? 203

第9章 数据库 207

FAQ9.01 如何理解ADO与OLEDB之间的关系? 207

FAQ9.02 如何使用ADO与数据库进行连接? 208

FAQ9.03 如何通过ADO获得记录集中的每条信息? 209

FAQ9.04 如何使用记录集对象的AddNew()、Update()和Delete()方法添加、修改和删除记录? 211

FAQ9.05 在应用程序中如何使用事务? 213

FAQ9.06 如何判断数据库中的一个表是否存在? 214

FAQ9.07 如何获取数据库中表的结构? 215

FAQ9.08 如何制作一个数据库连接文件? 217

FAQ9.09 如何备份和还原一个数据库? 218

FAQ9.10 如何使用LIKE及通配符进行模糊查询? 219

FAQ9.11 如何对时间段进行查询? 221

FAQ9.12 如何对数据库进行排序? 223

FAQ9.13 如何使用Top语句进行查询? 224

FAQ9.14 如何使用IsNull()和Nullif()函数? 226

FAQ9.15 如何进行分组查询? 227

FAQ9.16 如何进行多表联查? 229

FAQ9.17 如何使用左外、右外和完全外连接进行查询? 230

FAQ9.18 如何使用聚合函数? 232

FAQ9.19 如何使用数学函数? 233

FAQ9.20 如何使用字符串函数? 235

FAQ9.21 如何使用日期时间函数? 237

FAQ9.22 如何使用视图、存储过程和触发器? 238

第10章 网络应用 242

FAQ10.01 如何获得IP地址和主机名? 242

FAQ10.02 如何获得网卡的MAC地址? 243

FAQ10.03 如何修改网卡的物理地址? 246

FAQ10.04 如何在局域网中实现文件的共享? 247

FAQ10.05 如何对IE浏览器进行相关的操作? 248

FAQ10.06 如何实现IE浏览器添加收藏夹的功能? 250

FAQ10.07 如何删除Internet的临时文件? 251

FAQ10.08 如何处理同步、异步、阻塞和非阻塞? 254

FAQ10.09 如何获得所有打开的IE窗口标题? 255

FAQ10.10 如何连接FTP服务器? 257

FAQ10.11 如何向FTP服务器上传文件? 258

FAQ10.12 如何从FTP服务器上下载文件? 260

FAQ10.13 如何进行端口扫描? 261

FAQ10.14 如何使用VC++开发聊天工具? 262

第11章 算法 267

FAQ11.01 如何使用排序算法进行排序? 267

FAQ11.02 如何判断输入的E-mail地址是否合法? 270

FAQ11.03 如何判断身份证号是否合法? 274

FAQ11.04 如何使用数据加密、解密算法? 277

FAQ11.05 如何使用递归算法? 278

FAQ11.06 如何统计一段中英文混合文本的字符数? 279

FAQ11.07 如何实现十进制、十六进制和二进制字符串间的相互转换? 281

FAQ11.08 VC++下对冒泡排序算法的改进? 285

FAQ11.09 怎样求解穷举算法? 286

FAQ11.10 如何实现抽取中奖号码的算法? 287

FAQ11.11 如何实现猜数字游戏? 289

第12章 发布程序 292

FAQ12.01 如何给软件加密、解密? 292

FAQ12.02 如何使程序在开机时就自动运行? 294

FAQ12.03 如何创建、删除快捷方式? 295

FAQ12.04 如何在程序中通过代码注册和卸载OCX控件? 298

第13章 拾遗补缺 301

FAQ13.01 如何理解VC++中的泛型? 301

FAQ13.02 如何创建动态链接库? 302

FAQ13.03 如何使用自定义的动态链接库? 304

FAQ13.04 如何实现中英文之间的转换? 305

FAQ13.05 如何解决屏幕闪烁问题? 306

FAQ13.06 如何生成伪随机数? 308

FAQ13.07 如何使用CRT调试功能检测内存泄漏? 309

FAQ13.08 如何使用Flash动画? 310

FAQ13.09 如何使用正则表达式? 311