7

我想同时使用 InnoIDE 和 ISCC/ISPP,不同之处在于我想传入一个参数,该参数将覆盖脚本中的 #define。

在命令行中我可以通过/Dmyarg=myvalue. 这与脚本中的相同#define myarg myvalue

遗憾的是,脚本优先于命令行值。我知道,我试过了。我显然可以在脚本中注释掉,#define命令行定义将起作用,但是我将无法使用 IDE 进行构建。

是否可以在项目的某个地方设置一个#define内部 InnoIDE,或者是否有一些方法可以让命令行#define优先?

4

1 回答 1

14

在您的脚本中,执行以下操作:

#ifndef myarg
# define myarg "mydefault"
#endif

现在,如果您在 IDE 中编译,或者如果您使用命令行而不指定/Dmyarg="something",那么它将使用脚本中指定的默认值。否则,如果您确实在命令行上指定了某些内容,那么它将改用它。

于 2012-11-17T08:54:16.730 回答