我应该在VC ++中使用哪个子系统?

时间:2014-12-23 07:31:13

标签: c++ visual-c++

我在Windows 8上使用VC ++ 12,我想在没有任何控制台或用户界面(用户界面)的情况下制作在Windows,OS X和Linux上运行的C ++程序。

我可以在Properties > Linker > System中指定哪个子系统 S ,以便我的程序能够在没有任何控制台或UI(用户界面)的情况下在Windows,OS X和Linux上运行?< / p>

我查看了http://msdn.microsoft.com/en-us/library/fcc1zstk.aspx和其他主题,但没有找到足够的细节。

1 个答案:

答案 0 :(得分:1)

可执行代码只能在一个系统上运行。 OS / X,Linux或Windows。但是你可以以可移植的方式编写源代码,这样你只需编译它就可以在另一个平台上运行它。

如果这是你想要的,最好的选择是使用控制台子系统。您的程序将具有正常的main,标准的io通道cout,cin,cerr(或stdout,stdin,stderr)和文件描述符0,1和2也将成为标准。这样,我经常在Windows上运行良好的程序(使用MSVC编译),并且在没有任何修改的情况下也可以使用gcc for Linux进行任何修改。

另一方面,Windows子系统用于开发严重依赖于Windows API的本机Windows GUI。