我有一个包含以下代码片段的类库:
#if (DEBUG && CLOUD)
return "DEBUG && CLOUD";
#elif (DEBUG && !CLOUD)
return "DEBUG";
#else
return "Release";
#endif
当我将这个库引用到我的应用程序中时,即使定义了CLOUD,我也只获得了DEBUG或Release作为返回值。
答案 0 :(得分:1)
行为非常奇怪,所以我在配置属性选项卡下找到了解决方案属性。我对Visual Studio的工作感到震惊。
答案 1 :(得分:1)
案例#1:
#define DEBUG 1
#define CLOUD 1
- > return "DEBUG && CLOUD";
案例#2:
#define DEBUG
#define CLOUD
- > return "Release";
从这个例子可以得知#if (cond)
评估数字条件。
如果您只想检查定义,请执行以下操作:
#if defined DEBUG && defined CLOUD