Eclipse 索引(index)額外的定義

有時候程式碼裡頭有很多定義, 有些定義預設沒開(如下), Eclipse 不會對裡頭進行索引,

1
2
3
4
5
#ifdef USE_FEATURE_A
int feature_a(...) {
some = code(here);
}
#endif

所以這區塊的程式碼是沒有語法高亮的,
但如果是要寫(或閱讀) USE_FEATURE_A 裡面的 code 時,
開啟這個定義讓 Eclipse 去索引裡面的程式碼或使用自動完成功能, 會方便快速很多!!!

方法如下:
點選專案的 Properties -> C/C++ General -> Paths and Symbols 頁面,
在 Symbols 分頁 依照你的語言 (C/C++) 點選 Add 按鈕,
在 Name 欄位輸入 USE_FEATURE_A, 之後再用 Eclipse 索引一次就可以了.

另外, 如果是下列情況, 只需在 Value 欄位 輸入 1 即可.

1
2
3
4
5
#if (USE_FEATURE_A == 1)
int feature_a(...) {
some = code(here);
}
#endif

參考
How can I get Eclipse to index code inside #ifdef … #endif

相關主題
Eclipse 啟用 C++11 語法高亮與解析
Eclipse 常用快捷鍵