2010-07-19 77 views
6

我一直在使用Eclipse CDT一段時間,而且我喜歡它,但是我想解決一些乏味的事情。Eclipse CDT「新班級」模板

當您創建一個新文件時,其中一個選項是「新建」 - >「類」。我想知道是否有人知道如何編輯這個「Class」模板的「$ {declarations}」部分。

更具體地說,我查看了「窗口」 - >「首選項」菜單,找不到任何東西。我改變了「C/C++」 - >「代碼樣式」 - >「代碼模板」和「C/C++」 - >「編輯器」 - >「模板」。只有兩個中的第一個似乎改變了創建類時出現的內容,並且它不允許我更改「$ {declarations}」部分中的內容。有誰知道如何改變這個?

謝謝, 克里斯

回答

6

偏好C/C++ -> Editor -> Templates是由手動插入通過語境協助模板中使用。嘗試創建一個新文件,輸入clas並按ctrl+space獲取上下文幫助。您應該得到兩個協助提案:關鍵字提案和模板提案(如果您鍵入class並按ctrl+space,後者也將默認自動觸發)。

在選擇模板建議後,將根據您可以在此首選項中定義的模板生成類主體。


至於C/C++ -> Code Style -> Code Templates,這用於自動生成。當您使用新類嚮導時,將使用Default C++ Source templateDefault C++ Header template,並且$(declarations)變量被替換爲新類別嚮導生成的任何代碼。


這意味着,你可以通過手動觸發的編輯模板之一,可能是通過創建與新的類嚮導命名類,然後通過自定義替換默認類體在頭部使用自定義模板模板。

或者你是否建議新類嚮導缺少任何重要的字段,應該擴展?

+0

所有這些都是不錯的選擇。如果有一個簡單的方法來改變$(擴展)的擴展名,這將會很酷,但是這樣做會很好。謝謝! – 2010-07-24 04:14:38

2

或者你是否建議新班級嚮導缺少任何重要的字段,應該擴展?

是私人複製和分配操作員。

+0

* WORD *我完全同意。我很想有用於選擇哪些常用的類方法應該自動生成或不是自動生成的複選框。 – jvriesem 2013-07-19 23:17:39

1

哦!終於找到了答案。

  1. 在Eclipse CDT(麥浚龍),去File -> Preferences
  2. 導航到「首選項」窗口左側面板上的以下窗格:C/C++ -> Code Style -> Code Templates
  3. Code Templates窗口中,導航到Files -> C++ Header File
  4. 編輯頭文件:
  5. 刪除${declarations}一行,並插入你自己的東西。

這有一些不幸的缺點,就是失去了New Class Wizard會產生的一切。這可能會使繼承的類或其他任何可能從New Class Wizard中選擇的東西無效,但我沒有檢查。

這裏是我的C++頭文件模板:

${filecomment} 

#ifndef ${include_guard_symbol} 
#define ${include_guard_symbol} 

${includes} 

${namespace_begin} 

class ${type_name} 
{ 

public: 

    /* Default Constructor */ 
    ${type_name}(); 

    /* Deconstructor */ 
    virtual ~${type_name}(); 


private: 

    /* Disable the following by default */ 
    ${type_name}(const ${type_name}& other); 
    ${type_name}& operator=(const ${type_name}&); 

}; 

${namespace_end} 
#endif /* ifndef ${include_guard_symbol} */ 

希望這有助於!