谢谢邀请我的两个同学。其实我觉得这两个没有必要放在一起,我觉得这本就不是一个概念的东西,Qt说到底就是一个跨平台应用和UI开发的框架,而Visual Studio 2015是一个IDE。而C++跨平台,只要你不用平台特有的一些东西,如Windows API,那么也是很容易理解的,毕竟我以前就见过在Visual Studio写C++代码,然后放在Linux下跑的。
而这里的Visual Studio跨平台特性,如Android,Visual Studio也是利用了Android的Native Activity等。而值得关注的是Visual Studio 2015说可以生成Linux应用程序,我顿时脑洞大开,腹黑的瞎想,难道是调用Clang去生成?毕竟Clang本身的BSD License太友好。
我想了想还是匿了比较好。因为这个领域不是我的专业。但是对于跨平台这件事,还有 VS ,我还是想吐糟的。
VS 2015 是个庞然大物,有多大呢?大家可以去它的下载页围观一下:
Visual Studio 2015 CTPs
但细到楼主的这个问题,其实 VS 的跨平台特性的重点还是手机 app 的开发,而且只是在一个 IDE 里开发。而不是一份代码跨多个平台。至少从 Build cross-platform apps with Visual C++ 这篇文档我是这么理解的。我没有时间做的更细。如果题主了解 Qt 手机应用的开发,再下载一下 VS 2015 做个测评,就完全可以得出一个简单的结论,根本不用提问。微软的这个特性,野心很大,希望是能一举拿下 iOS 和 Android 平台手机应用的开发。
不过我连这个也不看好。但我的原因很主观:
经过了这么多年的发展,软件开发行业已经完全渗入了整个社会。当年的那种,比如说五笔吧,一个软件只要是用电脑的都会用到,这种可能性已经非常小了。一个软件解决方案的针对性是非常强的。而它的应用场景的复杂已经远远超过一般人的想象。想打造一套方案,或者时髦一点,生态环境,拿下整个市场,从HPC集群到PC再到手机,甚至路由这样的嵌入式设备?面对这个想法,我只能呵呵了。而微软就觉得这是可行的。更简单地说,在前所未有的细分下,针对一个特定的任务,从开发环境,工具链,到所选择的语言都会非常地不同,这不是一个 VS 就可以满足的。
当然 Qt 最近有点火,不光是国内,根据我的见识,那是因为做特定的嵌入式开发的缘故,做手机应用开发有,但并不算常见。所以, VS 就算在手机应用开发上火起来,对于 Qt 来说仍不是什么大不了的事情。只是在短期内损失一批潜在的贡献者而已。当然,上面可以看出,我对 VS 这玩意可以成功也持保留意见。
所以简单地说, VS 2015 这东西目前跟 Qt 风马牛不相及,自然也没什么冲击可言。
最后补充一下:
我觉得题主的这个提问没有提到点子上。因为 VS 说到底还是 IDE ,而 Qt 是开发框架。两者没有什么可比性。如果仅仅针对这个跨平台的特性而言。 VS 的这个方案跟没法与 Qt 相提并论,尽管我也不看好 Qt 程序的跨平台,所以 VS 2015 的这个特性根本就没有什么亮点可言。
更进一步推,题主的提问,可能只是初学者,想选一个简单的跨平台的开发环境做学习之用。我觉得还是 Qt 吧。原因很简单, Qt 环境比 VS 小得多,目标也确定的多。如果想赚钱,请直接去投苹果。 当然安卓也是一个选项。 VS 看上去嘛都有,什么都可以干,但是用上了,我估计会有种,这玩意怎么做嘛嘛不行的感觉。如果题主是重度 VS 使用者的话另说。