如果有一些跨平台的C/C++代码应该在Mac OS X,iOS,Linux,Windows上编译,我如何在预处理器进程中可靠地检测它们?
我需要我的代码根据编译它的操作系统做不同的事情.我正在寻找这样的东西:
#ifdef OSisWindows
// do Windows-specific stuff
#else
// do Unix-specific stuff
#endif
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?有没有更好的方法来做同样的事情?
我想在Linux和Windows上运行一些c ++代码.有些代码我只希望包含在一个操作系统中,而不包含在另一个操作系统中.是否有标准的#ifdef可以使用?
就像是:
#ifdef LINUX_KEY_WORD
... // linux code goes here.
#elif WINDOWS_KEY_WORD
... // windows code goes here.
#else
#error "OS not supported!"
#endif
Run Code Online (Sandbox Code Playgroud)
问题确实是重复的,但这里的答案要好得多,尤其是被接受的答案.