我正在用 C++ 编写一个小型库,我需要能够在很多不同的平台上构建它,包括 iPhone、Windows、Linux、Mac 和 Symbian S60。我已经编写了大部分代码,使其与平台无关,但有些部分必须在每个平台的基础上编写。
目前,我通过根据当前平台包含不同的标头来实现这一点,但我无法充实这一点,因为我不确定为所有平台定义了哪些预处理器定义。对于 Windows,我通常可以依靠查看 WIN32 或 _WIN32。对于 Linux,我可以依赖 _UNIX_,但我不太确定其他平台或它们的 64 位变体。是否有人列出了在平台上找到的不同定义,或者我必须求助于配置文件或 gcc 参数?