我打算给我写一点print( )
函数
然而,在所述功能中,我必须确定我是否在独立于操作系统处理控制台应用程序。
(主要用于决定是否使用std::cout
或与OS相关的MessageBox
实施。)
如果没有自动生成的常量,那么还有其他合适的多平台兼容方式吗?
我将它包含在一个库中,这意味着我无法分辨将使用哪个编译器或哪个IDE。
答案 0 :(得分:1)
在Windows上,您可以将GetConsoleWindow()
与一系列其他API调用结合起来,以了解应用程序是控制台类型还是GUI。就像在这篇文章中一样:How to check if the program is run from a console?
答案 1 :(得分:1)
没有与平台无关的方法来确定您的应用程序是使用GUI还是控制台。
在UNIX平台上,这将非常困难,因为有许多不同的GUI库,更不用说Wayland vs X11了。