代碼有點排不齊,是因爲粘貼的原因,忘見諒。另外,這是我第一篇文章,希望大家鼓勵。謝謝!
首先,先上效果代碼
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
接着,放出測試代碼
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作爲快捷鍵)
先別管這些宏什麼意思,最後我會貼出所有宏的解釋,相信,那是,你也可以編寫出符合自己編程習慣的宏代碼
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),選擇你事先設置好的名稱即可,
這裏我設爲防止頭文件被多次包含(選取)。
宏代碼敬上:
2#define _H_$FILE_BASE_UPPER$_H_
3
4$selected$
5
6#endif
注意文中的selected宏,那表示選中的文字將被 #ifndef ... #endif包圍
最後再展示下類註釋的宏編寫。
注意:VA Snippet Editor不僅支持自己的宏,還支持系統環境變量,注意下面的%USERNAME%就是個例子(表示系統現在使用的用戶名)
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的宏
2 $DATE$ Year/month/day formatted as %04d/%02d/%02d
3 $DAY$ Day of month formatted as %d
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 %d
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 %d
12 $YEAR_02$ Year formatted as %02d
13Time $HOUR$ Hour formatted as %d
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一樣