当前位置:天才代写 > tutorial > C语言/C++ 教程 > Qt学习之路(1):前言

Qt学习之路(1):前言

2017-11-05 08:00 星期日 所属: C语言/C++ 教程 浏览:278

我们所利用的Qt,确切地说也就是它的GUI编程部门。C++的GUI编程同Java差异:GUI并不是C++尺度的一部门。所以,假如利用Java,那么你最好的选择就是AWT/Swing,可能也可以使SWT/JFace,可是,C++的GUI编程给了你更多的选择:wxWidget, gtk++以及Qt。这几个库我都有打仗,可是打仗都不是许多,只能靠一些资料和本身的一点粗浅的认识说一下它们之间的区别(PS: 更详尽的较量在前面的文章中有)。

首先说wxWidget,这是一个尺度的C++库,和Qt一样复杂。它的语法看上去和MFC雷同,有大量的宏。听说,一个MFC措施员可以很容易的转换到 wxWidget上面来。wxWidget有一个很大的利益,就是它的界面都是原生气势气魄的。这是其他的库所不能做到的。wxWidget的运行效率很高,听说在Windows平台上比起微软自家的MFC也八两半斤。

gtk++其实是一个C库,不外由于C++和C之间的干系,这点并没有很大的干系。可是,gtk++是一个利用C语言很优雅的实现了面向工具措施设计的典型。不外,这也同样带来了一个问题——它的内里带有大量的范例转换的宏来模仿多态,而且它的函数名“又臭又长(不外这点我倒是以为无所谓,因为它的函数名固然很长,可是同样很清晰)”,利用下划线支解单词,看上去和Linux如出一辙。由于它是C语言实现,因此它的运行效率虽然不在话下。gtk++并不是模仿的原生界面,而有它本身的气势气魄,所以有时候就会和操纵系统的界面显得扞格难入。

再来看Qt,和wxWidget一样,它也是一个尺度的C++库。可是它的语法很雷同于Java的Swing,十分清晰,并且 SIGNAL/SLOT机制使得措施看起来很大白——这也是我首先选择Qt的一个很重要的方面,因为我是学Java身世的 🙂 。不外,所谓“成也萧何,败也萧何”,这种机制固然很清楚,可是它所带来的效果是你需要利用Qt的qmake对措施举办预处理惩罚,才气够再利用make可能 nmake举办编译。而且它的界面也不是原生气势气魄的,尽量Qt利用style机制十分巧妙的模仿了当地界面。别的值得一提的是,Qt不只仅运行在桌面情况中,Qt已经被Nokia收购,它此刻已经会成为Symbian系列的主要界面技能——Qt是可以或许运行于嵌入式平台的。

以往人们对Qt的授权多有诟病。因为Qt的贸易版本价值不菲,开源版本利用的是GPL协议。可是此刻Qt的开源协议已经酿成LGPL。这意味着,你可以将Qt作为一个库毗连到一个闭源软件内里。可以说,此刻的Qt协议的争议已经不存在了——因为wxWidgets可能gtk+同样利用的是雷同的协议宣布的。

在本系列文章中,我们将利用Qt4举办C++ GUI的开拓。我是参照着《C++ GUI Programming with Qt4》一书举办进修的。其实,我也只是初学Qt4,在这里将这个进修条记记下来,但愿可以或许利便更多的伴侣进修Qt4。我是一个Java措施员,感受 Qt4的一些定名类型以及约束同Java有异曲同工之妙,因而从Java迁移到Qt4好像坚苦不大。不外,这也主要是因为Qt4精采的设计等等。

闲话少说,照旧尽快开始下面的进修吧!

出处: http://devbean.blog.51cto.com/448512/193918

 

    关键字:

天才代写-代写联系方式