<br>#define DefineProHInit(_Struct_) DefineVal(_Struct_); \
void Init##_Struct_( void ); \
struct _Struct_ *Get##_Struct_( void );
#define DefineProInit(_Struct_) DefineVal(_Struct_); \
void Init##_Struct_( void ){ memset (( char *)&Define(_Struct_), '0' , sizeof ( struct _Struct_));} \
struct _Struct_ *Get##_Struct_( void ){ return ( struct _Struct_ *)&Define(_Struct_);}
#define DefineInit(_Struct_) Init##_Struct_()
#define DefineGet(_Struct_,_Name_) Get##_Struct_##_Name_()
|
上面的宏在不處理之前SlickEdit無法在輸入過程中進行語法提示, SlickEdit 也不知道通過宏實現的類似 SetMSG_MSGICBOXMoveMake這樣的方法,而編譯器是可以編譯的!無論如何, 這事非常不方便的, 因此需要我們在Options -> Lanaguages->Applaction Languages->C/C++ -->C/C++ Preprocessing中添加我們的宏 ,如下圖藍線處:

第一步、點擊下面的 "New" , 把你宏名稱填進去, 前后不能有空格。
第二步、如果SlickEdit 能在你當前的項目中找到這些宏 ,SlickEdit 會提示你選擇, 你選擇已有的就行了, 因為是從你代碼里面提取的。
第三步、 添加完畢后 點 Apply 應用宏
第四步、SlickEdit 詢問你是否需要 Retag ,點擊是!
最后效果如下圖演示:
一、輸入過程中的智能提示::

二、文件中的函數列表

最后, 希望諸位對SlickEdit 情有獨鐘的朋友多多指教。