平台C预处理器定义

wrr*_*ren 7 c++ portability c-preprocessor

我正在用C++编写一个小型库,我需要能够在很多不同的平台上构建,包括iPhone,Windows,Linux,Mac和Symbian S60.我编写了大部分代码,因此它与平台无关,但有些部分必须基于每个平台编写.

目前我通过根据当前平台包含一个不同的头来实现这一点,但是我很难充实它,因为我不确定为所有平台定义了哪些预处理器定义.对于Windows,我通常可以依靠看到WIN32或_WIN32.对于Linux,我可以依靠看到_UNIX_,但我不太确定其他平台或它们的64位变体.有没有人有平台上找到的不同定义的列表,或者我是否必须求助于配置文件或gcc参数?

Nik*_*sov 9

我在书签中有这个sourceforge预编译器页面.