【发布时间】:2019-03-25 10:05:00
【问题描述】:
我正在寻找一种在 Java 中使用类似于 #define 的方法。我知道那里没有预处理器,但我怀疑无法实现类似的东西。理想情况下,我正在寻找一种用 Java 翻译此 C++ 代码的方法:
#include <cstdio>
#define HelloWorld
#define BEGIN {
#define END }
#define PROGRAM int main()
#define WRITELN(a) puts(a);
PROGRAM HelloWorld
BEGIN
WRITELN("Hello, World")
END
在这被标记为重复之前,我想声明我正在寻找一种在编译之前定义字符串常量的方法,这个网站上有关于数字的问题,但这不是我想要的.我显然需要再次解释这个问题有何不同。有人链接的问题的OP是询问Java中的#define是否存在,答案是否定的。我要问的是如何声明在编译之前评估的字符串常量。
而且我也知道它的用途是有限的,但是我不明白为什么像#define NAME Larry 这样的东西不能有用。
【问题讨论】:
-
好吧,如果您正在寻找常量,那么定义为
static final的东西就很接近了。 -
另外,这是编写 C++ 代码的一种非常糟糕的方式。为什么需要它看起来像那样?
-
不清楚 - 您的代码 sn-p 中没有定义字符串常量。
-
@MCEmperor 我正在寻找一个要在编译前贴花的字符串常量。
-
@OliverCharlesworth 到底什么不清楚,你的意思是我的代码 sn-p 中没有定义字符串常量是什么意思?我数了5个; stackoverflow.com/a/1431600/9165579
标签: java string preprocessor compile-time