我正在编写一个我需要在Windows,Mac,Linux,Android,iOS上运行的库。我已经有了以下定义:
#if defined(_WIN32) || defined(__WIN32__)
// Windows
#define SYSTEM_WINDOWS
#elif defined(linux) || defined(__linux)
// Linux
#define SYSTEM_LINUX
#elif defined(__APPLE__) || defined(MACOSX) || defined(macintosh) || defined(Macintosh)
// MacOS
#define SYSTEM_MACOS
#elif defined(__ANDROID__)
// Android
#define SYSTEM_ANDROID
#else
// Unsupported system
#error This operating system is not supported
#endif
但我不确定iOS的用途。
答案 0 :(得分:0)
在/usr/include/TargetConditionals.h中,您可以找到TARGET_OS_IPHONE的定义,iOS和iOS模拟器的值均为1。
请参阅以下链接以确定如何检测多个平台的操作系统: