Qt:我应该使用Visual Studio、Qt Creator或其他什么?

23

我意识到有类似的问题,但它们似乎是在Qt Creator仍处于beta版本时提出的,因此答案可能已经发生了变化:

我们将启动一个带有少量GUI的项目,需要在Windows、OS X和Linux上运行。选择Qt是一个顺理成章的选择,尽管我们对Qt的经验很少。

目前最好的IDE选项是什么?

所有开发人员都将使用Windows机器,因此IDE不需要跨平台。

我们大多数人用Visual Studio做大部分事情,但也有人觉得Eclipse比较舒适。

Qt Creator中的重构工具如何?我喜欢在使用Visual Studio进行C++开发时使用Visual Assist X。有人尝试过在Qt项目中使用吗?

我知道这些是不同的问题。即使您无法回答所有问题,请也请回答一两个问题。

编辑:

我应该补充说明我们已经拥有Visual Studio和Visual Assist许可证,所以它们的成本不是问题。


1
非常感谢所有出色的回答。选择一个答案真是难啊! - Rasmus Faber
12个回答

11

我使用带有Visual Assist的Visual C++ 2008和带有MinGW的Qt Creator:

  • MinGW会让你抓狂,但幸运的是你可以在Qt Creator中使用VC++编译器。
  • 调试器集成不如VC++好。你不能设置下一个指令或做任何花哨的东西,如查看局部窗口中函数返回的内容。GDB非常慢。
  • 代码导航像VA X一样好(但要使用技术预览版,1.2.1并不那么好)
  • 代码完成还可以,当然不如VA X好。对于像从QList typedef访问const_iterator的成员这样的稍微复杂的东西,代码完成不起作用。
  • 比VC++更轻量级,并且在我看来具有更好的GUI
  • .pro文件通常比sln更容易管理

QtCreator是VC++的一个不错的替代品,我肯定会在Linux上使用它。 如果你已经有了VC++ 2005或2008和VA X,我建议你安装Qt插件并使用VC++进行开发。我还建议你并行安装Qt SDK并在MinGW和VC++中编译,以尽早捕获跨平台问题! 尝试保持.pro文件与sln同步,并注意此问题


9
使用QtCreator,但首先学习所有关键快捷键。自从我切换后(非常主观地说),我比以前快了30%,而且我尝试过几天甚至几年的每个IDE和编辑器。我对visual-something和甚至是我长期喜欢的eclipse感到厌烦。
起初,我认为“又一个IDE,这些开发人员的时间浪费了”,但在使用Qt Creator数天后,我甚至用它进行非Qt C ++开发。
这个IDE帮助您专注于您的工作,隐藏所有干扰并让您跳转而不是搜索。(因此,不需要类浏览器)

7

如果你正在使用Visual Studio,那么 QTCreator 相对它还处于开发的初期。

个人而言,我使用 QTCreator 开发 QT,因为所有 QT 环境(IDE、QTDesigner、QT 文档)都被嵌入其中,我认为这很好,但现在还不够成熟。

但是,由于你过去曾经使用 Visual Studio (配合 Visual Assist X 插件),所以你应该继续使用它。此外,最新的 QT 二进制文件 已经发布支持 Visual Studio 2008。所以使用它之前不需要编译 QT!

编辑(10月5日): 即将发布的 QtCreator 1.3 版本将拥有提高后的代码补全系统,至少和 Visual Assist X 一样好:http://www.youtube.com/watch?v=TyfO-7lvy%5Fc&feature=player%5Fembedded


你认为QtCreator缺乏成熟度的原因是什么? - Idan K
1
对我来说,不够成熟的表现是与其他集成开发环境进行比较。正如我所说,我正在使用QTCreator并且很喜欢它,但我正在等待一些我曾经拥有的功能。当你说这是一个发布了1年的IDE时,我同意你的看法。 - Patrice Bernassola
顺便提一下,来自QT网站: Qt 4.7和Qt Creator 2.0计划于2010年中期作为Qt SDK的一部分发布。 - metdos

4

我拥有Visual Studio 2005和美妙的插件“Visual Assist X”(我称其为VAX),但很高兴使用Qt Creator。随着Qt Creator 1.3的推出,情况会变得更好,我希望1.4能够添加一个类浏览器,这是它最大的弱点。但我不断惊叹于Qt Creator的优秀和其开发人员的清晰愿景。我惊叹,就是这样!好像所有VS竞争对手都已经放弃了,现在Qt Creator是唯一真正开发C++中心IDE的选择。我总是讨厌VS为了适应每种语言而变得简化,以至于后来的版本淡化了MFC向导(呸,但是嘿,那时我需要它们)。Eclipse基于Java。我喜欢使用用Qt构建并专门为Qt打造的IDE。所以,继续加油Qt Creator,不要回头。起初,我有点担心Qt Creator可能会成为另一种“凋零”的项目,但是在过去的两个版本和即将推出的v1.3之后,我看到它将成为新生代领导者——只要它能获得那个类浏览器!


3
我不久前也遇到了同样的问题。最终我选择了QtCreator,因为它在过去几个月中真的变得更加稳定。
所有工具都在一个环境中,这样就容易多了。调试功能也非常全面,并且与Qt框架集成得很好。代码补全几乎和Visual Studio一样好(只要你没有Visual Assist ;-),而代码导航非常容易使用!
再加上QtCreator可以在所有三个主要平台上运行,这最终成为我选择它的原因。
我认为,在开始新项目时,QtCreator已经成为需要考虑的一个严肃的替代品...

3
另一个可能性是使用Netbeans。 请看this
Netbeans免费提供了关于内存和分析的强大工具。此外,与Qt的集成很好。

不知道 Netbeans 支持这个,太棒了! - Mark Stahler

2
在QtCreator中按下CTRL+K。

这很酷!定位文件的非常高效的方法,最重要的是,它是一种方法! - Edwin Yip

2
我以前从未使用过Qt的Visual Studio集成功能,只是简单地看了一下Qt Creator,但我还是想分享一下我的想法。
使用Qt Creator可以让你在不同平台上拥有一个熟悉的调试环境,并支持Qt集合等内容。
似乎Qt Creator具有非常好的代码导航功能。它还与Git,Subversion和Perforce集成。对于新项目的启动来说,与VS相比,这似乎是一个优点。

2

QtCreator是一款稳定且舒适的IDE,尽管在Windows上的编译/调试循环比Visual Studio慢。它没有Visual Studio提供的所有花哨功能,但使用一段时间后,我意识到我并不需要它们。特别是在C++中,Visual Studio没有提供源代码重构 - 他们真的在推动C#吗?;)

Visual Studio确实是一款不错的IDE,但最终如果你必须为花哨的功能支付许多许可证费用(取决于你的团队规模),那么这些钱可能更好地用于其他工具。

您还将避免维护不同的项目文件(Windows上的Visual Studio,MacOS和Linux上的其他东西),即使您仅在Windows上开发,也会有时间在其他操作系统上编译,测试和调试小问题。

Eclipse是一种替代方案,但我还没有检查过该IDE上Designer的稳定性。您可能需要花费一些时间来配置每个工作站,并且可能需要等待更新。另一方面,您可以从整个Eclipse环境中受益,这可能有助于满足其他需求。但这是否值得冒险呢?

我肯定会先尝试QtCreator并尝试坚持他们的环境。如果证明这是一个问题,那么迟早会转移到VS。

您的时间安排也不错:您应该测试4.6预览版,正式发布应该很快。


1

我建议至少尝试QtCreator。显然,对于习惯于使用Visual Studio的人来说,转换不会一夜之间完成,但最终我相信它是值得的。

主要原因是虽然您提到所有开发人员将使用Windows,但最终您将不得不在测试期间在其他平台上运行程序。然后很难想象您不需要调试和修复问题。您可以通过gdb / vim做得很好,但对于习惯于Visual Studio提供的调试器/编辑器体验的人来说,适应gdb / vim可能需要一些时间。QtCreator在这方面并不完美,但它是接近Visual Studio的最佳选择。

还有其他几点值得一提:

  • 它没有Visual Studio的成熟度,但对于一个已经存在约一年左右的IDE来说,它非常出色。
  • 在重构方面,它不如Visual Assist X先进。在代码浏览方面,我认为它们是相等的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接