当前位置: 首页 > >

C++最好的图形库是什么?

发布时间:

?



本文字数:1660,阅读时长大约:15分钟



?


世界上的GUI库多如牛毛,有的开源,有的收费,有的可以做手机app开发,有的可以做桌面应用,有的只能用在某个系统,有的支持跨*台。基于不同的编程语言,人们又开发出不同的图形框架,比如Java有AWT、Swing;C#有WinForm和WPF;C++有MFC、QT、wxWidgets等。在C++的库中,QT凭借对跨*台的支持、简单易用、开发效率高等特性,成为最受欢迎的GUI库之一。


?


一、Qt是什么

引用百度百科一句话概括:“Qt是一个1991年由Qt Company开发的跨*台C++图形用户界面应用程序开发框架。”



Qt支持市场上常用的操作系统,并且开发出的图形界面非常优美。它是完全面向对象的,容易扩展,允许真正的组件编程。


?


二、*台支持

Qt不仅支持桌面系统,还支持手机和嵌入式的应用。桌面系统包括Windows、Unix、Linux、Mac,手机系统支持安卓和iOS等。和Java不同的是,它没有运行在额外的一层虚拟机上,而是针对不同的系统提供了相应的套件和编译器。Qt的跨*台支持使得它对不同*台的开发部署更为简单。


?


三、使用Qt开发的应用

使用Qt开发的应用很多,比较著名的有Linux的桌面环境KDE、WPS、Skype、VirtualBox虚拟机、谷歌地图、VLC播放器等等,其中KDE已经是Linux的主流桌面应用之一。


?


四、Qt的优点

使用Qt开发有很多优点,比如:


跨*台支持:如果你希望程序运行在多个*台下,同时又降低开发成本,Qt是很好的选择

简单易学:封装好,几行简单的代码就可以开发出简单的程序,不需要对操作系统底层有太多了解

资料丰富:网络上有很多的资料,社区氛围好,可以得到很多帮助

界面漂亮:Qt很容易开发出比较炫酷的效果,而MFC、wxWidgets等就比较麻烦

独立安装:不像Java需要安装虚拟机,C#需要.net,Qt会编译成本地代码,不需要额外库的支持

?

?


因为Qt的种种优势,它在市场上的份额越来越高,得到很多公司的青睐。下面列举了猎聘上一些Qt工程师的职位,月薪基本上在2万-3万之间。



?


五、Qt的发展史与版本

Qt几经辗转,被很多公司收购过,换了很多东家:


1991年由挪威的一家计算机公司Trolltech(奇趣科技)开发

1996年进入商业领域,成为Linux KDE的基础

2008年奇趣科技被芬兰巨头诺基亚收购

2012年诺基亚濒临破产,Qt出售给了芬兰的一家IT公司Digia


?


Qt的版本:


Qt 1 - 3都是由奇趣科技开发的

诺基亚开发了Qt 4版本

Digia开发了Qt 5,但是Qt 5对 Qt 4不兼容

?


另外Qt有商业版和免费版。两者的代码都是一致的,但商业版可以得到售后服务,比如培训和技术支持。免费版需要遵从LGPL协议,简单说,你需要开放所有使用了LGPL协议的代码,所以使用免费版Qt进行商业开发的同学要注意商业纠纷的风险。


?


六、Qt的下载与安装

(1)下载


Qt有在线安装包和离线安装包。在线安装包的使用体验不是很好,经常会卡顿在99%的进度不能继续,所以推荐大家使用离线安装包。安装包的下载可以使用以下两个网站:


http://www.qtcn.org/bbs/read-htm-tid-1075.html


https://www.qt.io/offline-installerst


?


比如下载Windows下的Qt 5.14的离线安装包可以选择下面这个链接:



(2)安装


下载好后,前面基本一直点击下一步就可以了:




这一步要注册Qt账户,需要一个邮箱地址,可以按提示操作





指定安装路径



下面需要选择套件,这些套件都包含专属的编译器。


MSVC是Desktop Qt MSVC的套件,需要安装Visual Studio相对应的版本

MinGW是Desktop Qt MinGW的套件。MinGW是Minimalist GNU for Windows的缩写,是在Windows*台上使用的GNU工具集导入库的集合,这个集*薈编译器gcc,C++编译器g++,和调试器gdb等工具。如果不使用Visual Studio,可以选择这个套件

UWP是针对Win 10以后UWP程序的套件

Android,如果需要开发安卓app,需要勾选这个套件

Sources可以下载Qt的源代码

Qt的其他组件,比如Qt Charts、Qt Quick 3D等,可以根据需要选择,注意括号里写着(Deprecated)的套件是为了兼容*姹荆绻强⑿鲁绦虿挥醚≡

Developer and Desinger Tools里面Qt Creator是一定要选的,如果使用Qt Creator开发,MinGW也要勾选上


?



接下来都点击下一步就可以了





接下来开始安装



安装成功



?


七、总结

Qt有着良好的跨*台支持、界面优美、简单易用、学*资料丰富等优点,和其他的GUI框架相比受到开发者们的广泛欢迎,因此想要从事图形界面开发的同学可以考虑学*Qt。


?


?


推荐阅读:


Linux快速搭建C/C++开发环境


一篇文章快速搞懂什么是GitHub


虚拟机安装 Linux 最完整攻略


Vi 和 Vim 的使用


?


?


?


获取知识干货、增加面试经验、了解职场人生


欢迎关注微信公众号


?




?



友情链接: