我们中的一些人不可避免地需要支持使用微软的Visual Studio 6.0 IDE编写的“遗留”代码,尽管意见可能不同,但与Visual Studio系列的后续版本相比,它通常被认为不太用户友好。
因此,我想听听你们最喜欢的隐藏/文档不全的IDE功能(可以是C++或VB),请按常规做法,每个帖子一个特性。
我们中的一些人不可避免地需要支持使用微软的Visual Studio 6.0 IDE编写的“遗留”代码,尽管意见可能不同,但与Visual Studio系列的后续版本相比,它通常被认为不太用户友好。
因此,我想听听你们最喜欢的隐藏/文档不全的IDE功能(可以是C++或VB),请按常规做法,每个帖子一个特性。
对于VB6,MZ-Tools 是一个非常好用的免费插件。我最喜欢的功能是它的查找功能和通过点击按钮查找给定例程的所有调用者的能力。它还有其他一些功能,其中一些在某些情况下也很有帮助。
我不知道这是否是一个真正的“隐藏”功能,但我一直认为这是一个很好的时间节省方式。
您可以创建自己的自定义模板,用于类、模块、表单等,并在IDE中使其可用。例如,我通常喜欢在我的VB6代码中使用强类型Collection
类。因此,我可能想要一个FooCollection
,它仅包含Foo
对象,而不是普通的Collection
。我不想每次需要新的强类型Collection
时都重新实现Collection
接口,因此我创建了一个包含所有样板Collection
代码的新类模板。现在,每当我要添加新的类模块到我的项目中时,我的自定义TypedCollection
模板就会作为一个选项出现。然后,我只需将新添加的类重命名为FooCollection
,并将所有出现的"As Object"替换为"As Foo"(其中Foo是我想要存储在集合中的对象的类型),然后完成。
继续以我的自定义类模板示例为例,以下是操作步骤:
C:\Program Files\Microsoft Visual Studio\VB6\Template\Classes
文件夹中保存您的文件(注意:其他子文件夹,如Forms
等,是用于其他类型的模板)。去掉扩展名的.cls文件名将出现在IDE中,所以我通常在文件名中包含空格以提高可读性。Project->Add Class Module
时,您的模板类将出现在可用类模板列表中。C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin\AUTOEXP.DAT
,添加规则以在调试监视窗口中显示自定义类的有意义值。
我的意思是这样的。我们定义了一个日期结构:
typedef struct tagMHDATE
{
short int nDay; // Day of the Month 1..31
short int nMonth; // Month of the Year 1..12
short int nYear; // Year
} MHDATE, FAR *LPMHDATE;
MHDATE today;
GetDate(&today);
如果我将today
拖放到监视窗口中,我会看到类似于以下内容:
today {...}
tagMHDATE=date=<nMonth>/<nDay>/<nYear>
现在我在观察窗口中看到了这个:
today {date=10/8/2008}
我将从一个VS C++功能开始介绍,这个功能为我节省了很多时间:在调试器的观察窗口中,将",su"(不带引号)附加到Unicode字符串上,可以查看该字符串的值(而不是该字符串的内存地址)。
Erl 函数在 VB6 中使用。如果您在 VB6 代码中添加了行号,那么在错误处理程序中,可以通过函数 Erl 的返回值访问发生错误的行号。
对于VC6,可以获取Whole Tomato的Visual Assist X。它包含一个智能(且易用)的Intellisense替代品,更丰富的代码着色,一些重构支持以及许多其他功能。绝对值得投资。
将用于启动 VB6 的快捷方式的 "开始位置" 属性更改为源代码目录的根目录。这样做可以节省每次从IDE中打开项目时浪费的鼠标点击。
CodeShine: VB6代码重构插件(免费)。包括提取方法、引入解释变量、提取函数、引入解释变量、重命名等重构。