在开发各种平台(Android、iPhone、Mac、Windows等)时,需要根据平台定义进行分流处理(#ifdef/#endif)。 但是,我不知道 Mac/iPhone/Android 中的原始定义。
‖Windows : WIN32 (Visual C++)
‖Mac : __MAC_NA(?) (XCode)
iPhone/iPad/iPod : __IPHONE_NA(?) (XCode)
‖安卓:?? (AndroidNDK)
我应该根据什么定义划分?
最佳答案
对于 iPhone,我认为定义是 TARGET_OS_IPHONE,而对于 Android,它是 ANDROID。我不太熟悉 Apple 特有的东西,但在四处寻找之后,我发现了一个包含大量操作系统定义的好列表 here .在 SO 上还有另一个答案,它有一种方法可以提取定义,找到 here
关于c++ - 跨平台宏定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3170928/