龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

vc中的使用技巧和常见错误

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
1、在数据库操作时,将系统自动生成的CTime替换成COleDateTime。 2、在操作ACCESS数据库时,字符串的标识是:单引号;日期/时间类型的标识是:# 3、将 DDX_FieldDateTimeCtrl(pDX, IDC_PUBLISHDATE,

1、在数据库操作时,将系统自动生成的CTime替换成COleDateTime。

2、在操作ACCESS数据库时,字符串的标识是:单引号;日期/时间类型的标识是:#

3、将 DDX_FieldDateTimeCtrl(pDX, IDC_PUBLISHDATE, m_pSet->m_publishDate,m_pSet);  替换成:
         DDX_DateTimeCtrl(pDX, IDC_PUBLISHDATE, m_pSet->m_publishDate);
注:这是VC6里的一个老BUG,好像SP6里也是那样。

4、遇到ClassView里的某个类突然丢失时可以把项目文件夹下的扩展名为.ncb和.opt的两个文件删掉,再重新打开项目。
     遇到类下的成员函数定位不准,即双击该函数时并不能准确定位到指定位置时,可以把debug或release(这要视你当时选择的MODE来定)下的扩展名为:.pch的文件删掉;如还不行,就再把上面两个文件也一起删掉,再不行,,我也搞不定了,只好建议你跑出门去,对着天空大喊三声:“神啊,救救我吧!”

5、如果你很喜欢VC6的auto-complete功能,而发觉他与系统的Ctrl+Space输入法冲突了,建议如下:
     Menu“Tools”->“Customize”->"Keyword",选择分类为:"All commands",鼠标点击all commands里面,敲击“comple...”就出来了,在右侧重新添加一个“Shift+Space”并Assign就行了。
    这一点VC6要比delphi6好,在delphi6及以后的版本里,autocomplete功能已经做的很好了,当然以前的版本吗, autocomplete慢的跟什么似的,但很遗憾,我至今未找到能够自定义快捷方式的地方,好像只能用"Ctrl+Space",哪位大虾知道告诉我,另外delphi6下也可以Ctrl+J,这个VC6里没有,不过装了Visual Assist6就行了。

6、建议你使用VC6编辑的关键字颜色自定义功能,或者你可以使用Visual Assist6启动颜色功能。即使你不喜欢自定义颜色,那有一个颜色,我还是建议你自定义一下:
Menu"Tools"->"OPtions"->"Format"
Color:Number  Foreground:red,不然是很容易搞混:'0'和'o'的,尤其是在VC6的默认字体下。

7.检测程序中的括号是否匹配 
    把光标移动到需要检测的括号(如大括号{}、方括号[]、圆括号()和尖括号<>)前面,键入快捷键“Ctrl+]”。如果括号匹配正确,光标就跳到匹配的括号处,否则光标不移动,并且机箱喇叭还会发出一声警告声。 
[注:当一个函数体的内容过长时,全部选中,可以把光标移动到函数体的{处,按下Ctrl+},即可全部选中]

8.查看一个宏(或变量、函数)的宏定义
    把光标移动到你想知道的一个宏上,就比如说最常见的DECLARE_MAP_MESSAGE上按一下F12(或右键菜单中的Go To Defition Of…),如果没有建立Browse files,会出现提示对话框,确定,然后就会跳到定义那些东西的地方。
[注:这个功能还是比较常用的,不过感觉热键并不如鼠标选择的快]

9格式化一段乱七八糟的源代码
    选中那段源代码,按ATL+F8。 
[注:选中一段代码,按下Tab,或shift+Tab,右(或左)移一个TAb]

10.在编辑状态下发现成员变量或函数不能显示
    删除该项目扩展名为.ncb文件,重新打开该项目。
[注:我上次说的不是很准确,.opt里面可能存有你在Classview新建的文件夹信息,删除的话那些分类文件夹信息也一并删除了]

11.如何整理ClassView视图中大量的类
    可以在classview 视图中右键新建文件夹(new folder),再把具有相近性质的类拖到对应的文件夹中,使整个视图看上去清晰明了。
[注:事实上,我也见到在FileView里用文件夹分类的,我的感觉是:可能是为了避免在Classviews里出现如上述的部分函数丢失的情况吧,毕竟VC6有时并不是很稳定,当然这两种方法各有利弊的,我目前一般是倾向于前者的]

12.定位预处理指定
    在源文件中定位光标到对称的#if, #endif,使用Ctrl+K。

13.如何添加系统中Lib到当前项目
    在Project | Settings | Link | Object/library modules:输入Lib名称,不同的Lib之间用空格格开。
[注:或者这样,#pragma comment(lib,"yourlib.lib")]

14.如何添加系统中的头文件(.h)到当前项目。
    #include <FileName.h>,告诉编译到VC系统目录去找;使用#include "FileName.h",告诉编译在当前目录找。

精彩图集

赞助商链接