2012-08-14 72 views

回答

5

如果您的意思是在运行时更改它,那么在编译之前不会如XValue替换为50

如果你的意思是在编辑中改变它,那么是的,使用#undef#define

例子:

XValue = 30; // NOT ALLOWED 

#undef XValue // ALLOWED 
#define XValue 30 
+0

我在运行时的意思..反正感谢这么多,我会让你的答案接受 – Gabrail 2012-08-14 09:09:05

+0

@MByD:这是一个很好的方式做和#undef,然后...#定义? – Mak13 2016-12-27 12:27:33

2
#undef XValue 
#define XValue 100 
1

什么:

int global_mutable_value = 50; 
#define XValue global_mutable_value 

或者只是

int XValue = 50; 

你不说你为什么要XValue做个宏,所以我们无法分辨您的意图它可以通过在运行时可以改变的东西来满足。如果他们使用的东西,可以在运行时,而不是宏观变化(我用一个外部变量)。如果他们不这样做,那当然你是不幸的。