还是那句话:自己想办法(以后都不再进行说明),如果有钱还是支持正版,毕竟作为程序员的我们应该知道写一个好的程序不容易。
VassistX的使用指南
1.通过“Tip of the day”快速学习。
在你安装VassistX后,启动VS时,会有一个帮助提示(如下图),这是你快速学习VassistX的最好方式,还有小动画提示,一看就懂。如果你看不懂英文,看小动画也能明白怎么回事。
如果你不希望每次启动VS时都弹出这个对话框,只需把左下角的”Show tips at startup”的勾选去掉就可以。如果需要再次弹出对话,在菜单中选择VassitX\Visual Assist X Option…–>Starup,把Show tip of the day勾选上即可。
2.主要窗口和工具
插件装上之后你应该就能感觉比以前好多了,比如代码高亮啊,智能提示啊,应该立马就能体现出来。但这还是要简单介绍一下。
插件成功安装之后,菜单栏会多一个VassistX的菜单,这里包含了VassistX的所有功能和相关的设置,设置方面后面还会进一步讲。
左侧会有两个VA Outline和VA View视图(如果没有,可能菜单VassistX\Tools\VA Outline调出来)。VA Outline这个视图很有用,也是我用的最多的一个视图,它能清晰地呈现一个类中的各个成员。
工具栏也会多一个VassistX工具组。这个我用的最多的要数最右边的.h与.cpp的切换按钮。
3常用的快捷键
这里只列出一些最常用的快捷键,一般记住这些也就够用了。
更改快捷键
菜单Tools\Option…,然后在打开的对话框中选择Keyboard,Show commands containning中输入VAssistX就能看到VAssistX的各种功能,你可以设置某一指定功能的快捷键。如你输入VAssistX.refactorRename,就能看到重命名的默认快捷键是Shift+Alt+R,你在Press shortcut keys中按下快捷键更改它。
VassistX的高效开发的属性配制
选项设置
VassistX有些默认设置并不太友好,我们可以自己重新设置它。在菜单中选择VassitX\Visual Assist X Option…打开设置对话框。以下是我个人的偏好设置,仅作参考(只说明一些关键设置的含义)。
1.拼写错误检测(这个不要选,不然老会有红色的波浪线提示);
2.类型错误检测(这个选上,可以测试你的变量类型是否正确);
1.高亮引用的标识符(设置颜色,一个当前词的颜色,一个是非当前词的颜色);
2.自动高亮当前光标所在处标识符
3.高亮查找引用的结果;
4.高亮重命名标识符时关联的变量;
1.(黑色)高亮匹配的括号;
2.(红色)高亮不匹配的括号;
3.高亮当前光标所在的行(可选择高亮前景或高亮背景);
4.纵向指示器的分隔线,一般用于控制一行代码的字符数;
5.高亮查找结果。
注释配制与自动添加代码
注释也是程序的一个重要组成部分之一,好的注释是提高代码的可读性和程序的可维护性的一个关键因素,而要写大量的注释是一件非常繁琐的事情,给程序员增加了不少负担,而VAsssistX就可能帮我们减轻这种负担。将光标移到函数名处,右键鼠标选择Refactor\Document Method可自动帮我们添加函数的注释。
我们可以自己配制自定义的注释格式。选择菜单:VAssistX\Insert VA Snippet…\Edit VA Snippet…进行设置。给出我的相关设置,仅作参考:
Title: File header detailed
Shortcut: fh
Description: 对整个文件进行注释
//===============================================================
//Summary:
// $FILE_BASE$ 类, $end$
//FileName:
// $FILE_BASE$.$FILE_EXT$
//Remarks:
// ...
//Date:
// $YEAR$/$MONTH$/$DAY$
//Author:
// %USERNAME%([email protected])
//===============================================================
说明:两个$符号之间的内容都是VAssistX中定义的宏,参见文后的附录:Visual Assist X Snippets 宏
Title: Refactor Document Method
Shortcut:
Description: 对函数进行注释
//---------------------------------------------------------------
//function:
// $SymbolName$ $end$
//Access:
// $SymbolVirtual$ $SymbolPrivileges$ $SymbolStatic$
//Parameter:
// [in] $MethodArg$ -
//Returns:
// $SymbolType$ -
//Remarks:
// ...
//author: %USERNAME%[luoweifu]
//---------------------------------------------------------------
Title: #ifndef … #endif
Shortcut: #ifn
Description: 防止头文件重复包含
#ifndef __$FILE_BASE_UPPER$_H__
#define __$FILE_BASE_UPPER$_H__
$end$
#endif //__$FILE_BASE_UPPER$_H__
Title: Refactor Encapsulate Field
Shortcut:
Description: 添加类中成员变量的Get/Set方法。
$end$$SymbolType$ Get$GeneratedPropertyName$() const
{
return $SymbolName$;
}
void Set$GeneratedPropertyName$($SymbolType$ val)
{
$SymbolName$ = val;
}
Title:
Shortcut: //-
Description: 用于某一个重要修改的注释,并记录修改时间。
// $end$ [$YEAR$/$MONTH$/$DAY$ %USERNAME%]
Title:
Shortcut: ///
Description: 分隔线,用于重要的代码块的分隔。
//===============================================================
$end$