首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨平台的宏定义

跨平台的宏定义
EN

Stack Overflow用户
提问于 2010-07-03 16:58:38
回答 3查看 2.9K关注 0票数 1

在开发各种平台(Android、iPhone、Mac、Windows等)时,需要根据平台定义进行不同的处理(#ifdef/#endif)。但是,我不知道Mac/iPhone/Android的原始定义。

Windows: WIN32 (可视化Windows)

Mac:__MAC_NA(?)(XCode)

iPhone/iPad/iPod:__IPHONE_NA(?)(XCode)

Android:??(AndroidNDK)

我应该用什么定义来划分?

EN

回答 3

Stack Overflow用户

发布于 2010-07-03 17:15:36

对于iPhone,我认为它的定义是TARGET_OS_IPHONE,对于ANDROID,我相信它是Android。我对苹果特有的东西并不是很熟悉,但在浏览了一下之后,我发现了一份很棒的清单,上面有很多操作系统定义的here。这里有另一个答案,找到了here,它有一种方法来提取定义

票数 4
EN

Stack Overflow用户

发布于 2010-07-03 17:54:15

您可以随时为您的项目编写一些代码,从而将自己从特定于编译器/平台的defines中解放出来。

#define PLATFORM_ANDROID

  • Iphone:#define PLATFORM_IPHONE

  • etc.

  • 安卓系统

并使所有构建都包含一个配置文件,该文件在给定项目中定义了这些宏中的一个,并且应该能够全面工作。如果你使用的是Visual Studio,你可以在项目设置中定义它们,甚至不需要配置文件。

票数 4
EN

Stack Overflow用户

发布于 2010-07-03 17:03:12

ANDROID NDK使用definition Android。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3170928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档