1.检测程序中的括号是否匹配 |
把光标移动到需要检测的括号(如大括号{}、方括号[]、圆括号()和尖括号<>)前面,键入快捷键“Ctrl+]”。如果括号匹配正确,光标就跳到匹配的括号处,否则光标不移动,并且机箱喇叭还会发出一声警告声。
|
2.查看一个宏(或变量、函数)的宏定义 |
把光标移动到你想知道的一个宏上,就比如说最常见的DECLARE_MAP_MESSAGE上按一下F12(或右键菜单中的Go To Defition Of …),如果没有建立Browse files,会出现提示对话框,确定,然后就会跳到定义那些东西的地方。
|
3.格式化一段乱七八糟的源代码 |
选中那段源代码,按ATL F8。
|
4.在编辑状态下发现成员变量或函数不能显示 |
删除该项目扩展名为.ncb文件,重新打开该项目。
|
5.如何整理ClassView视图中大量的类 |
可以在classview 视图中右键新建文件夹(new folder),再把具有相近性质的类拖到对应的文件夹中,使整个视图看上去清晰明了 .
|
6.定位预处理指定 |
在源文件中定位光标到对称的#if, #endif,使用Ctrl K.
|
7.如何添加系统中Lib到当前项目 |
在Project | Settings | Link | Object/library modules:输入Lib名称,不同的Lib之间用空格格开.
|
8.如何添加系统中的头文件(.h)到当前项目. |
#include ,告诉编译到VC系统目录去找.使用#include "FileName.h",告诉编译在当前目录找.
|
9.如何在Studio使用汇编调试 |
在WorkBench的Debugger状态下按CTRL F7.
|
10.怎样处理ClassZiard找不到的系统消息 |
如果要在ClassWizard中处理WM_NCHITTEST等系统消息,请在ClassWizard中Class Info页中将Message filter改为Window就有了.
|
11.如何干净的删除一个类 |
先从Workspace中的FileView中删除对应的.h和.cpp文件,再关闭项目,从实际的文件夹中删除对应的.h和.cpp文件与.clw文件。
|
12.如果让控制台应用程序支持mfc类库 |
可以在控制台应用程序中include 来引入mfc库,但是控制台应用程序缺省是单线程的,mfc是多线程的,为解决该矛盾,在project setting->c/c 选项,选择code generation,在use run-time library 下拉框中选择debug multithread。
|
13.如何汉化只有可执行代码的.exe 文件 |
在nt 下利用vc open file 以resources方式打开*.exe 文件,直接修改资源文件,然后保存即可。
|
附:VC项目文件说明 |
.opt |
工程关于开发环境的参数文件。如工具条位置等信息; |
.aps |
(AppStudio File),资源辅助文件,二进制格式,一般不用去管他. |
.clw |
ClassWizard信息文件,实际上是INI文件的格式,有兴趣可以研究一下.有时候ClassWizard出问题,手工修改CLW文件可以解决.如果此文件不存在的话,每次用ClassWizard的时候绘提示你是否重建. |
.dsp |
(DeveloperStudio Project):项目文件,文本格式,不过不熟悉的话不要手工修改.DSW(DeveloperStudio Workspace)是工作区文件,其他特点和DSP差不多. |
.plg |
是编译信息文件,编译时的error和warning信息文件(实际上是一个html文件),一般用处不大.在Tools->Options里面有个选项可以控制这个文件的生成. |
.hpj |
(Help Project)是生成帮助文件的工程,用microsfot Help Compiler可以处理. |
.mdp |
(Microsoft DevStudio Project)是旧版本的项目文件,如果要打开此文件的话,会提示你是否转换成新的DSP格式. |
.bsc |
是用于浏览项目信息的,如果用Source Brower的话就必须有这个文件.如果不用这个功能的话,可以在Project Options里面去掉Generate Browse Info File,可以加快编译速度. |
.map |
是执行文件的映像信息纪录文件,除非对系统底层非常熟悉,这个文件一般用不着. |
.pch |
(Pre-Compiled File)是预编译文件,可以加快编译速度,但是文件非常大. |
.pdb |
(Program Database)记录了程序有关的一些数据和调试信息,在调试的时候可能有用. |
.exp |
只有在编译DLL的时候才会生成,记录了DLL文件中的一些信息.一般也没什么用. |
.ncb |
无编译浏览文件(no compile browser)。当自动完成功能出问题时可以删除此文件。build后会自动生成。 | |