Qt Widgets 4.7与5.1的区别

3

我最近开始了一个新项目,我们将使用Qt创建GUI。不详细说明,管理层已经规定我们必须使用Qt 4.7。这个决定没有任何有效的理由。我们没有将任何现有代码移植到Qt 5,这是全部新实现。我是项目的UI负责人,我需要为使用Qt 5.1提出论据。

我将解释一下一些工程师对于转移到5.1的担忧是不合理的原因,但我也想通过给出具体的理由来加强我的论点,即我们应该使用Qt 5.1而不是4.7。我想使用5.1的主要原因是它是最新版本,比4.7有很多改进。虽然这个理由是有道理的,但我会感激任何熟悉Qt 4.7+与5.0+之间差异的人帮助我提出一些具体的理由。我自己还没有使用过Qt 5。无论如何,我们都将使用小部件,而不是QtQuick/QML,请只考虑与Qt小部件相关的差异。


1
访问Qt的网站显示了这个。最值得注意的似乎是“信号槽连接的编译时检查”和各种新的OpenGL钩子。 - frsfnrrg
1个回答

2
Qt 5.1相较于Qt 4.7或4.8有多项新功能。其中一个重要的功能是新的信号和槽语法,它将提供以下几点:
  1. 在编译时检查信号和槽的存在性、类型或是否缺少Q_OBJECT,这意味着如果您拼错了信号或槽的名称,或者槽的参数与信号不匹配,您将得到编译器错误。在进行一些重构并更改信号或槽的名称或参数时,这可能会为您节省一些时间。
  2. 可以连接到QObject的任何成员函数,而不仅仅是槽。
  3. 新的语法甚至可以连接到函数,而不只是QObjects。
此外,它还为C++11提供了一些新的支持。
更多信息请参见以下链接: http://woboq.com/blog/new-signals-slots-syntax-in-qt5.html http://woboq.com/blog/cpp11-in-qt5.html

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