我以前没有必要使用预处理器宏,并在网上遇到了这段代码:
#ifndef LITE_VERSION
#ifndef FULL_VERSION
#error
#endif
#endif
这样做的目的是警告是否未声明LITE或FULL。我已将其放在Prefix.pch文件中,并收到#error语句的警告。
我尝试将错误更改为:
#pragma message("some text")
虽然这会编译,但没有显示任何文字(我可以看到)。
我还没有宣布LITE或FULL,所以我想知道为什么这不起作用。
答案 0 :(得分:4)
这应该是:
#pragma message "some text"
如果您愿意,也可以使用此功能:
#pragma message ("some text")
请参阅http://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html
通常我使用稍微不同的方法:
#if defined(LITE_VERSION)
...
#elseif defined(FULL_VERSION)
...
#else
#error "Must define LITE_VERSION or FULL_VERSION"
#end
答案 1 :(得分:1)
它应该像以前一样处理错误。只需添加消息并构建
即可#ifndef LITE_VERSION
#ifndef FULL_VERSION
#error "Neither Lite or Full version has been defined"
#endif
#endif