相关疑难解决方法(0)

如何让 Eclipse CDT 相信宏是为源代码编辑和代码完成而定义的?

我的源代码中有:

// foo.cpp
struct foo
{
  foo() {}

  #ifdef I_WANT_THIS_FEATURE
  void bar() {}
  #endif
};
Run Code Online (Sandbox Code Playgroud)

在我的 Makefile 中我有

foo.o: foo.cpp
        g++ -c -DI_WANT_THIS_FEATURE foo.cpp -o foo.o
Run Code Online (Sandbox Code Playgroud)

这可以从命令行以及我在 Eclipse 中创建的外部构建器(它基本上定义了一些环境变量和调用make)进行良好的编译,并且我可以调用foo::bar().

但是,在 Eclipse CDT 源代码编辑器中,我定义的部分foo::bar()具有灰色背景(表明foo::bar()不会包含在构建中),并且类型对象上的代码完成foo不建议bar()作为可以调用的方法。

如何使用I_WANT_THIS_FEATURE自定义 makefile 在 Eclipse CDT makefile 项目中定义宏,以便源代码编辑器和代码完成可以识别该宏?

eclipse indexing eclipse-cdt eclipse-juno

4
推荐指数
1
解决办法
5993
查看次数

标签 统计

eclipse ×1

eclipse-cdt ×1

eclipse-juno ×1

indexing ×1