我们可以使用Visual Studio创建C ++ GUI应用程序,还是需要像跨平台软件那样的QT?
(顺便说一句,我假设如果我用C ++创建一个GUI,它将是一个跨平台的应用程序,因为据我所知,C ++是一种跨平台语言)
对于你们中的一些人来说,这可能是一个非常明显的问题,但我无法弄明白。
答案 0 :(得分:10)
C ++语言是跨平台的,但其标准库并未专门为任何 GUI开发提供任何内容。为此,您需要一个C ++ GUI框架/库。 Qt恰好提供和它也是跨平台的。
所以不,如果不使用某些跨平台的GUI框架,您的应用程序不仅不会成为跨平台,它根本就不会拥有GUI,因为C ++标准库已经过去了#39 ; t提供此功能。
如果您使用仅适用于Windows的GUI框架(如MFC或Windows Runtime),则您不会跨平台。
答案 1 :(得分:4)
C ++没有标准的内置GUI库。如果要创建跨平台GUI,则必须使用附加库,如C ++,GTKmm,wx等。
如果您只定位Windows,则MFC存在且包含在Visual C ++中。
答案 2 :(得分:4)
没有直接在c ++中构建的GUI库。因此,使用c ++构建的任何GUI都不是跨平台的。 Visual Studio附带了几个GUI库 - MFC和ATL都很常见。然而,两者都不是跨平台的。当然,如果你包含它,这并不能阻止你使用其他GUI框架。有很多可供选择,包括跨平台的。
仅仅因为一种语言与系统无关,并不意味着人们没有为不系统独立而编写框架。
答案 3 :(得分:1)
如果您想要多平台应用程序,您应该关注使用Qt。通过提供用于处理Windows和Linux(以及其他)的API,它使多平台开发更容易。您可以轻松地在Visual Studio中使用Qt。而且真的很容易学习。查看官方Qt文档以获取集成技巧。
答案 4 :(得分:1)
好的,重点是qt声称(和prooves)与平台无关。至少如果你使用MinGw GCC或MSVC工具链在Windows平台上编译它应该不重要。
不同之处在于,如果您使用Visual Studio的集成GUI支持,您最终将获得其专有的,非便携式CLR / CLI实现,并且该代码不会随身携带。平台。