VAssistX的VA Snippet Editor使用小讲

来源:互联网 发布:企业软件防火墙排名 编辑:程序博客网 时间:2024/04/30 20:40

代码有点排不齐,是因为粘贴的原因,忘见谅。另外,这是我第一篇文章,希望大家鼓励。谢谢!

首先,先上效果代码

 1//********************************************************************
 2//    TESTCLASS.H    文件注释
 3//    文件名  :    TESTCLASS.H
 4//    文件路径:    J:/CODING/TEST/C++解疑/CYUYAN/
 5//    作者    :    RIPPLE
 6//    创建时间:    2009/10/3 11:02
 7//    文件描述:    
 8//*********************************************************************
 9#ifndef _H_TESTCLASS_H_
10#define _H_TESTCLASS_H_
11
12#include <iostream>
13using namespace std;
14
15namespace ripple
16{
17    //********************************************************************
18    //    CHello    类注释
19    //    类名    :    CHello
20    //  基类名称:    NULL
21    //  命名空间:    ripple
22    //    作者    :    RIPPLE
23    //    创建时间:    2009/10/3 11:16
24    //    类描述  :    说Hello
25    //*********************************************************************
26    
27    class CHello
28    {
29    public:
30        void SayHello(void)
31        {
32            cout<<"hello"<<endl;
33        }

34    private:
35
36    }
;
37
38    //********************************************************************
39    //    CHelloWorld    类注释
40    //    类名    :    CHelloWorld
41    //  基类名称:    CHello
42    //  命名空间:    ripple
43    //    作者    :    RIPPLE
44    //    创建时间:    2009/10/3 11:16
45    //    类描述  :    说HelloWorld
46    //*********************************************************************
47    
48    class CHelloWorld : public CHello
49    {
50    public:
51        void SayHello()
52        {
53            cout<<"hello world"<<endl;
54        }

55    private:
56    
57    }
;
58    
59}

60#endif
61

接着,放出测试代码

 1//********************************************************************
 2//    C.CPP    文件注释
 3//    文件名  :    C.CPP
 4//    文件路径:    J:/CODING/TEST/C++解疑/CYUYAN/
 5//    作者    :    RIPPLE
 6//    创建时间:    2009/10/3 12:49
 7//    文件描述:    
 8//*********************************************************************
 9
10#include "testclass.h"
11using namespace ripple;
12int main()
13{
14    CHello p;
15    p.SayHello();
16    CHelloWorld pp;
17    pp.SayHello();
18    system("pause");
19}

那些注释。都是事先在VAssistX中,通过宏写的。接下来放出各个关键宏的代码
首先是 文件级的注释
fileinfo:
快捷键自己设定:(本人用fileinfo作为快捷键)
先别管这些宏什么意思,最后我会贴出所有宏的解释,相信,那是,你也可以编写出符合自己编程习惯的宏代码

1//********************************************************************
2//    $FILE_BASE_UPPER$.$FILE_EXT_UPPER$    文件注释
3//    文件名  :    $FILE_BASE_UPPER$.$FILE_EXT_UPPER$
4//    文件路径:    $FILE_PATH_UPPER$/
5//    作者    :    %USERNAME%
6//    创建时间:    $YEAR$/$MONTH$/$DAY$ $HOUR$:$MINUTE$
7//    文件描述:    $end$
8//*********************************************************************
9

接着,防止头文件被多次包含(选取)(PS:这有两种情况,一种是这种,用鼠标选择后 右键选择Sourround With (VA X),选择你事先设置好的名称即可,
这里我设为防止头文件被多次包含(选取)。
宏代码敬上:

1#ifndef _H_$FILE_BASE_UPPER$_H_
2#define _H_$FILE_BASE_UPPER$_H_
3
4$selected$
5
6#endif

注意文中的selected宏,那表示选中的文字将被 #ifndef ... #endif包围
最后再展示下类注释的宏编写。
注意:VA Snippet Editor不仅支持自己的宏,还支持系统环境变量,注意下面的%USERNAME%就是个例子(表示系统现在使用的用户名)

 1//********************************************************************
 2//    $ClassName$    类注释
 3//    类名    :    $ClassName$
 4//  基类名称:    $BaseClassName$NULL
 5//  命名空间:    ripple
 6//    作者    :    %USERNAME%
 7//    创建时间:    $YEAR$/$MONTH$/$DAY$ $HOUR$:$MINUTE$
 8//    类描述  :    $end$
 9//*********************************************************************
10
11

好了,写了几个常用的宏代码了,大家应该对这有点感觉了吧。
安装软件的方法就不多说了。网上很多。
接下交大家如何打开VA Snippet Editor
方法有几种,第一种,也是个人比较喜欢的方式,在IDE的文本编辑区输入 //-然后会弹出[Edit]菜单,点击这个菜单即可进入编辑。当然也可以添加删除拷贝等操作。
第二种是,在IDE主菜单中,依次选择VAssisstX->Visual AssistX Options->Advanced->Sugesstions,单击右边的Edit VA Snippet,即可进入编辑。
最后,献上所有VS Snippet Editor的宏

 1Date
 2 $DATE$ Year/month/day formatted as %04d/%02d/%02d 
 3 $DAY$ Day of month formatted as %
 4 $DAY_02$ Day of month formatted as %02d 
 5 $DAYNAME$ Three-character abbreviation of day 
 6 $DAYLONGNAME$ Full name of day 
 7 $MONTH$ Month formatted as %
 8 $MONTH_02$ Month formatted as %02d 
 9 $MONTHNAME$ Three-character abbreviation of month 
10 $MONTHLONGNAME$ Full name of month 
11 $YEAR$ Year formatted as %
12 $YEAR_02$ Year formatted as %02d 
13Time $HOUR$ Hour formatted as %
14 $HOUR_02$ Hour formatted as %02d 
15 $MINUTE$ Minute formatted as %02d 
16 $SECOND$ Second formatted as %02d 
17File 
18 $FILE$ Full filename with path* 
19 $FILE_UPPER$ Full filename with path in uppercase* 
20 $FILE_BASE$ Filename without path or extension* 
21 $FILE_BASE_UPPER$ Filename without path or extension in upper case* 
22 $FILE_EXT$ Filename extension* 
23 $FILE_EXT_UPPER$ Filename extension in upper case* 
24 $FILE_PATH$ Path of file* 
25 $FILE_PATH_UPPER$ Path of file in upper case* 
26General 
27 $clipboard$ Current clipboard 
28 $end$ Position of caret after expansion 
29 $selected$ Current selection** 
30 $$ Literal '$' character 
31Symbol Context 
32 $MethodName$ Name of containing method 
33 $MethodArgs$ Method parameters 
34 $ClassName$ Name of containing class 
35 $BaseClassName$ Name of base class of containing class 
36 $NamespaceName$ Name of innermost containing namespace 
37GUID 
38 $GUID_DEFINITION$ Generated GUID formatted for use in a definition 
39 $GUID_STRING$ Generated GUID formatted for use in a string 
40 $GUID_STRUCT$ Generated GUID formatted for use in a struct 
41 Refactor 
42 $GeneratedPropertyName$ Property name generated during Encapsulate Field 
43 $MethodArg$ One parameter of the method and its type 
44 $MethodArgName$ One parameter of the method 
45 $MethodArgType$ Type of one parameter of the method 
46 $MethodBody$ Body of implementation 
47 $MethodQualifier$ Optional qualifiers of method 
48 $ParameterList$ Parameters separated by commas 
49 $SymbolContext$ Context and name of method 
50 $SymbolName$ Name of method 
51 $SymbolPrivileges$ Access of method 
52 $SymbolStatic$ Keyword static or blank 
53 $SymbolType$ Return type of method 
54 $SymbolVirtual$ Keyword virtual or blank 
55
56

另外,参考官方网站http://www.wholetomato.com/products/features/vasnippets.asp学习更多。。
最后的最后是系统环境常用的变量(也许有用):

WINDOWS系统变量ALLUSERSPROFILE=H:/Documents and Settings/All Users        //所有用户的PROFILE路径APPDATA=H:/Documents and Settings/Administrator/Application Data        //当前用户的应用程序路径ClusterLog=H:/WINDOWS/Cluster/cluster.log        //集群日志路径CommonProgramFiles=H:/Program Files/Common Files        //应用程序公用的文件路径COMPUTERNAME=E2003        //计算机名称ComSpec=H:/WINDOWS/system32/cmd.exe        //当前的命令解释器HOMEDRIVE=H:         //当前用户的主盘HOMEPATH=/Documents and Settings/Administrator        //当前用户的主目录LOGONSERVER=/E2003        //登录的服务器NUMBER_O_PROCESSORS=1        //当前计算机的处理器数字OS=Windows_NT        //当前系统的内核Path=H:/Program Files/Support Tools/;H:/WINDOWS/system32;        //学过DOS的都知道PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH        //以前DOS下默认的是COM,EXE,BAT,现在已经有这么多了哟,以前都不知道,脚本都可以不打扩展名了PROCESSOR_ARCHITECTURE=x86        //处理器架构PROCESSOR_IDENTIFIER=x86 Family 15 Model 1 Stepping 3, GenuineIntel        //处理器标识符PROCESSOR_LEVEL=15        //没注意过,不知道有什么用PROCESSOR_REVISION=0103        //版本?ProgramFiles=H:/Program Files        //应用程序的默认安装目录PROMPT=$P$G        //学过DOS的都知道SESSIONNAME=Console        //会话名称?SystemDrive=H:    //系统所在的盘符SystemRoot=H:/WINDOWS        //系统所在的目录TEMP=H:/DOCUME~1/ADMINI~1/LOCALS~1/Temp         //当前用户的临时目录TMP=H:/DOCUME~1/ADMINI~1/LOCALS~1/Temp          //同上USERDNSDOMAIN=MCSE.COM        //当前用户所在的域的DNS表示USERDOMAIN=MCSE        //NETBIOS表示USERNAME=administrator        //当前用户名USERPROFILE=H:/Documents and Settings/Administrator        //当前用户的配置文件目录windir=H:/WINDOWS        //windows所在的目录,总是跟systemroot一样 
 
 
版权所有,转载请注明出处!
如果对本文有不解之处,可以联系本人(yeduwu@163.com)。或在此博客留言。
有不同见解者,亦可以通过上述通道联系本人。。欢迎指教。
原创粉丝点击