我有一个 C++ 代码部分,我想将其排除在构建 iOS 之外。
我该怎么做?
跟进问题:
如果我已经有一个#ifndef WIN32
. 我想将排除WIN32
与iOS
是否可以做类似的事情#ifndef WIN32 & iOS
?
我应该如何将我的代码排除在一个子句中的Win32
& both 之上?iOS
PS:
我看到很多帖子解释如何#ifndef
退出iOS,但我如何将它与它结合起来#ifndef WIN32
是个问题。
要在 WIN32 和 iOS 上排除您的代码,您需要使用#if/#endif
而不是#ifndef/#endif
. 如果您尚未定义宏来检测 iOS 的编译,请查看此答案。否则,可以通过类似的方式阻止它:
#if !defined(WIN32) && !defined(YOUR_IOS_MACRO_HERE)
// Your code here
#endif // !defined(WIN32) && !defined(YOUR_IOS_MACRO_HERE)
您使用#if
而不是的原因#ifndef
是因为前者允许将多个语句与&&
or链接||
,而后者仅检查单个宏的存在。