首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有支持C预处理器的java IDE吗?

有支持C预处理器的java IDE吗?
EN

Stack Overflow用户
提问于 2012-09-23 08:35:42
回答 1查看 279关注 0票数 3

我希望在java代码中找到一个java,或者配置一个流行的代码编辑器,该编辑器可以理解纯C预处理器(例如,'#if‘,但不像’//#if‘这样的athenna注释预处理器,如下所示:

代码语言:javascript
复制
class Person
{
#if USE_SHORT_ID
  short m_Id;
#elif
  int m_Id;
#endif
#define DEFAULT_ID 0
#include "some_functions.h"

}

原因:我参与了一个java项目,该项目在java代码中定义和宏了C,然后在编译java代码之前运行预处理器。这些代码成长为一个范围,我会迷失:太多的类、成员、函数名称,而没有代码完成。

EN

回答 1

Stack Overflow用户

发布于 2012-09-23 08:52:37

就像“当时看起来是个好主意”之类的东西.

如果所有宏使用都与复制的宏类似,则可能可以执行以下操作:

types.hj:( java头文件的通常扩展名是什么?!)

代码语言:javascript
复制
#if USE_SHORT_ID
    #define short id_t
#elif
    #define int id_t
#endif

然后在*.java文件中执行以下操作:

代码语言:javascript
复制
class Person
{
    id_t m_Id;
}

然后,当调用预处理器时,强制包含types.hj文件。例如,对于GNU cpp,您可以这样做:

代码语言:javascript
复制
$ cpp -include types.hj PersonP.java -o Person.java

对于不禁用IDE自动完成功能,这应该足够了。

如果还有其他更有创意的宏使用..。好吧,那可能行不通。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12550860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档