VC实用技巧
- 格式:doc
- 大小:56.50 KB
- 文档页数:9
1.检测程序中的括号是否匹配把光标移动到需要检测的括号(如大括号{}、方括号[]、圆括号()和尖括号<>)前面,键入快捷键“Ctrl +]”。
如果括号匹配正确,光标就跳到匹配的括号处,否则光标不移动,并且机箱喇叭还会发出一声警告声。
2.查看一个宏(或变量、函数)的宏定义把光标移动到你想知道的一个宏上,就比如说最常见的DECLARE_MAP_MESSAGE上按一下F12(或右键菜单中的Go To Defition Of …),如果没有建立Browse files,会出现提示对话框,确定,然后就会跳到定义那些东西的地方。
相当可喜的是,它也可以看到Microsoft定义的系统宏,非常good.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 <FileName.h>,告诉编译到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.在Studio中快速切换两个文件有时,我们需要在最近使用的两个文件中快速切换,换Ctrl+F6。
这在两个文件不相今的时候就有用的.13.取得源程序预处理后的结果:在Studio里,可以在->PROJECT->SETTINGS->C/C++->Project Options中,在最后加上 /P /EP这两个编译开关即可做到"只进行预处理".就可以了。
编译以后就可以在源程序目录中发现“文件名.I ”的文本文件。
这就是预处理后的结果。
(注意注:区分大小定,请用大定/P)14.在Debug模式中查看WINAPI调用后的返回值:很简单,且实用:在watch中加入@hr,err。
在CSDN的文档中心有一篇讲得更细,请参考。
15.产生指定源程序文件的汇编代码:从IDE菜单的Project->Setting打开项目设置,按如下文件做:1.先在左边选择指定文件,可以多选。
2. 在右边的C++属性页中,在category中选择List Files,接着在下面的List Files Type中选择Assembly and source code(或选择其它),最后在List File Name中输入在个C/C++源文件产生的相应的汇编代码的文件。
3.编译整个工程。
16.手工编译纯资源成dll:Rc.exe /v data.rcCvtres.exe /machine:ix86 data.resLink /SUBSYSTEM:WINDOWS /DLL /NOENTRY data.res ;编译成DLL文件这种方式创建的DLL是最小的,比起你用Win 32 Dynamic Libray等产生的更小。
17:怎样快速生成一个与现有项目除了项目名外完全相同的新项目?利用File菜单下生成新项目中的Custom AppWizard ,选择 An existing Project ,然后选择现有项目的项目文件名(*.dsp)Finish,编译后就生成一个可以生成与现有项目相同但可以重新取名的项目的AppWizard。
你可以象用MFC AppWizard一样用它。
如果不想用了,可以在VC 安装目录下Common\MSDev98\Template目录中删除该Wizard中.awx和 .pdb文件。
18:如果想把整个项目拷贝到软盘,那些文件可以删掉?除了项目文件夹中debug文件夹可以删除外,.ncb,.clw,.opt 等文件也可以删除,这些文件Rebuilt all后可以重新生成。
附:VC项目文件说明.dsp 项目参数配置文件,这个文件太重要,重点保护对象。
..dsw 工作区文件,重要性一般,因为它信息不我,容易恢复。
以下文件在项目中是可丢弃的,有些文件删除后,VC会自动生成的。
.clw ClassWizard信息文件,实际上是INI文件的格式,有兴趣可以研究一下.有时候ClassWizard出问题,手工修改CLW文件可以解决.如果此文件不存在的话,每次用ClassWizard的时候绘提示你是否重建..ncb 无编译浏览文件(no compile browser)。
当自动完成功能出问题时可以删除此文件。
build后会自动生成。
.opt 工程关于开发环境的参数文件。
如工具条位置等信息;(可丢弃).aps (AppStudio File),资源辅助文件,二进制格式,一般不用去管他..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文件中的一些信息.一般也没什么用.1:使用vc开发项目时,常会遇到这种情况:即明明只改动了一个文件,却要把整个项目全部重新编译连接一次。
刚刚连接好,一运行,又提示重新编译连接一次,非常讨厌。
这是因为出现了未来文件的缘故。
解决方法:找出对应文件夹下的debug目录,将未来文件全部delete, 再rebuild all一次。
(未来文件即其创建和修改时间都比系统时间靠后)2:有时,workspace中的classview显示混乱。
其表现如下:(1):添加的成员变量或函数不能显示;(2):即使显示出来了变量或函数,双击后不能跳至正确的位置。
解决方法:删除.ncb文件,再rebuild all.3:如何干净的删除一个类?1:先从workspace中的fileview中删除对应的.h和.cpp文件。
2.再关闭项目,从实际的文件夹中删除对应的.h和.cpp文件。
3.再删除.clw文件。
打开项目,rebuild all。
4:初学者常有这样的疑惑:直接望工程文件里加入一个cpp原文件再编译连接的话老是提示没有找到预编译头解决方法:#include "stdafx.h"5:如何向项目中加入自己定义的类?方法很多,介绍一个简便的:选择insert/new class菜单弹出对话框;选择class type为generic;输入类名。
当然,也可以自己决定该类的基类6:如何在工作区(workspace)导入多个项目(project)?在打开一个项目(*.dsp文件)后,在利用“project” 菜单下insert project into workspace 子菜单选择另一个项目文件(*.dsp文件),可插入另一个项目。
在classview 视图中,右键可以激活其中某个项目,工作区插入多个项目能方便不同项目间拷贝代码、资源等。
7: 在classview 视图中类太多如何整理?我们可以在classview 视图中右键新建文件夹(new folder),再把具有相近性质的类拖到对应的文件夹中,使整个视图看上去清晰明了。
8:如何快速删除项目下debug 文件夹中临时文件?在fileview视图中选中对应项目,右键clean即可。
9: 打开一个源文件较大的项目编辑操作非常慢,怎么办?不要打开项目文件(*.dsp文件),直接打开要编辑的单个源文件(*.h或*.cpp)进行编辑,要快得多。
10:如果想把整个项目拷贝到软盘,那些文件可以删掉?除了项目文件夹中debug文件夹可以删除外,.ncb,.clw,.opt 等文件也可以删除,这些文件rebuilt all后可以重新生成。
11:怎样快速生成一个与现有项目除了项目名外完全相同的新项目?利用file菜单下生成新项目中的custom appwizard ,选择 an existing project ,然后选择现有项目的项目文件名(*.dsp)finish,编译后就生成一个可以生成与现有项目相同但可以重新取名的项目的appwizard。
你可以象用mfc appwizard一样用它。
如果不想用了,可以在vc 安装目录下common\msdev98\template目录中删除该wizard中.awx和 .pdb文件。
12:如何在源文件中定位光标到对称的{ }和 #if, #endif ?前者使用ctrl和“}”键,后者使用ctrl和“k”键。
13:如何在vc中设置头文件和库文件?除了vc缺省头文件和库文件外,如果经常要用到第三方的头文件和库文件可以在tools options 的directories中设置。
如果只是本项目要用到,可以在project setting->link object/library modules 中设置库文件。