人生第一篇博客文章,写写VAssistX的VA Snippet Editor

人生第一篇博客文章,写写VAssistX的VA Snippet Editor

首先,先上效果代码

 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 >
13 using   namespace  std;
14
15 namespace  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 "
11 using   namespace  ripple;
12 int  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的宏
 1 Date
 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 
13 Time $HOUR$ Hour formatted  as   %
14  $HOUR_02$ Hour formatted  as   % 02d 
15  $MINUTE$ Minute formatted  as   % 02d 
16  $SECOND$ Second formatted  as   % 02d 
17 File 
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 *  
26 General 
27  $clipboard$ Current clipboard 
28  $end$ Position of caret after expansion 
29  $selected$ Current selection **  
30  $$ Literal  ' $ '  character 
31 Symbol 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  
37 GUID 
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一样
Logo
作者:Gezidan
出处:http://www.rixu.net    
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

你可能感兴趣的:(人生第一篇博客文章,写写VAssistX的VA Snippet Editor)