1
我已经看到了一些样板头文件中的代码与不同的操作系统打交道,像下面这样:差异的#ifdef __linux #ifdef和__unix在C++头文件
#ifdef __WIN32
//windows
#elif __linux
//linux
#elif __unix
//all unix not captured above
#endif
如果__unix
捕获所有的Unix系统没有捕获__linux
,为什么不只是使用__unix
?我假设它是某种保护措施,例如“如果__linux
还不够,请使用此功能”。
但是,这两者都有使用的必然原因,而不是仅仅通过__unix
(再一次,这种假设可能是错误的)。
这是怎么回事?
你可以在这里找到[OS]的原因(http://sourceforge.net/p/predef/wiki/OperatingSystems/) –
unix与linux不一样 – Galik