本站首页    管理页面    写新日志    退出


«September 2025»
123456
78910111213
14151617181920
21222324252627
282930


公告

戒除浮躁,读好书,交益友


我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:邢红瑞的blog
日志总数:523
评论数量:1142
留言数量:0
访问次数:9702824
建立时间:2004年12月20日




[c++]vc中的使用技巧
原创空间,  文章收藏,  软件技术,  电脑与网络

邢红瑞 发表于 2005/9/7 10:29:54

1.ClassView里的某个类突然丢失时可以把项目文件夹下的扩展名为.ncb和.opt的两个文件删掉,再重新打开项目。   遇到类下的成员函数定位不准,即双击该函数时并不能准确定位到指定位置时,可以把debug或release(这要视你当时选择的MODE来定)下的扩展名为:.pch的文件删掉;如还不行,就再把上面两个文件也一起删掉,再不行,,我也搞不定了,只好建议你跑出门去,对着天空大喊三声:“神啊,救救我吧!” 2.VC6的auto-complete功能,系统的Ctrl+Space输入法冲突了,    打开Menu “Tools”->“Customize”->"Keyword",选择分类为:"All commands",鼠标点击 all commands里面,敲击“comple...”就出来了,在右侧重新添加一个“Shift+Space”并Assign就行了。或者使用Visual Assist6就行了。 3. VC6编辑的关键字颜色自定义功能,Color:Number  Foreground:red,或者你可以使用Visual Assist6启动颜色功能。在VC6的默认字体下,'0'和'o',很容易搞混4.检测程序中的括号是否匹配      把光标移动到需要检测的括号(如大括号{}、方括号[]、圆括号()和尖括号<>)前面,键入快捷键“Ctrl+]”。如果括号匹配正确,光标就跳到匹配的括号处,否则光标不移动,并且机箱喇叭还会发出一声警告声。  [注:当一个函数体的内容过长时,全部选中,可以把光标移动到函数体的{处,按下Ctrl+},即可全部选中] 5.查看一个宏(或变量、函数)的宏定义 ,把光标移动到你想知道的一个宏上,就比如说最常见的 DECLARE_MAP_MESSAGE上按一下F12(或右键菜单中的Go To Defition Of…),如果没有建立 Browse files,会出现提示对话框,确定,然后就会跳到定义那些东西的地方。 [注:这个功能还是比较常用的,不过感觉热键并不如鼠标选择的快] 6.格式化一段乱七八糟的源代码 ,选中那段源代码,按ATL+F8。  [注:选中一段代码,按下Tab,或shift+Tab,右(或左)移一个TAb] 7.在编辑状态下发现成员变量或函数不能显示     删除该项目扩展名为.ncb文件,重新打开该项目。 [注:我上次说的不是很准确,.opt里面可能存有你在Classview新建的文件夹信息,删除的话那些分类文件夹信息也一并删除了] 8.如何整理ClassView视图中大量的类     可以在classview 视图中右键新建文件夹(new folder),再把具有相近性质的类拖到对应的文件夹中,使整个视图看上去清晰明了。 [注:事实上,我也见到在FileView里用文件夹分类的,我的感觉是:可能是为了避免在Classviews里出现如上述的部分函数丢失的情况吧,毕竟VC6有时并不是很稳定,当然这两种方法各有利弊的,我目前一般是倾向于前者的] 9.定位预处理指定     在源文件中定位光标到对称的#if, #endif,使用Ctrl+K。 10.如何添加系统中Lib到当前项目     在Project | Settings | Link | Object/library modules:输入Lib名称,不同的Lib之间用空格格开。 最好#pragma comment(lib,"yourlib.lib"),或者直接将lib作为文件的形式加入project,这个要比GCC好。 11.如何在Studio使用汇编调试 ,    在WorkBench的Debugger状态下按CTRL+F7。 12.怎样处理ClassWiZard找不到的系统消息     如果要在ClassWizard中处理WM_NCHITTEST等系统消息,请在ClassWizard中Class Info页中将Message filter改为Window就有了。 [注:主要是classwizard默认的是toponthemost] 13.如何干净的删除一个类     先从Workspace中的FileView中删除对应的.h和.cpp文件,再关闭项目,从实际的文件夹中删除对应的.h和.cpp文件与.clw文件。 14.如果让控制台应用程序支持mfc类库     可以在控制台应用程序中include 来引入mfc库,但是控制台应用程序缺省是单线程的,mfc是多线程的,为解决该矛盾,在project setting->c/c++ 选项,选择code generation,在 use run-time library 下拉框中选择debug multithread。 附: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后会自动生成。


阅读全文(2827) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.047 second(s), page refreshed 144781625 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号