[英]What is the NDEBUG preprocessor macro used for (on different platforms)?
[英]What are the preprocessor definitions for mobile platforms?
我正在编写一个我需要在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的用途。
在/usr/include/TargetConditionals.h中,您可以找到TARGET_OS_IPHONE的定义,iOS和iOS模拟器的值均为1。
请参阅以下链接以确定如何检测多个平台的操作系统:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.