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