Qt是一个跨平台的C++图形用户界面应用程序框架。
框架的本质就是一群大佬发明的让菜鸡写出来的代码也也比较规范
也就是限制程序员的自由,让程序员写出来的代码规范。
库和框架有相似性。
库是被程序员调用的,(程序员是主体)
Qt是跨平台的,支持Linux,windwos,Mac,嵌入式系统
Linux中主要是KDE桌面是Qt构建的。
现在主要使用的Qt5版本,大多数企业使用的也是这个。
商业许可:你想使用Qt开发一个程序,就可以向公司买商业许可证
开源许可:开发一个程序,不必花钱,直接白嫖、
就像收费的Linux版本 Redhat,为什么花钱买,为的就是买一份服务。
跨平台
接口简单,容易上手,学习qt有助于学习其他框架
一定程度上简化了内存回收机制,半自动的垃圾回收机制
开发效率高,能够快速构建应用程序
可以进行嵌入式开发
社区氛围也很好,可以提供较多的资料
WPS Office办公软件
Linux的KDE桌面
Google earth桌面应用
分三部分
1.安装C++的编译器,比如gcc,编译器不等于IDE
2.Qt SDK,SDK是软件开发工具包,比如windows版本QtSDK里已经内置了C++编译器,也可以用vs2022,但是需要配置,容易出错。
3.需要有一个Qt的集成开发环境
(1).Qt官方提供的Qt Creator,最容易入门上手的方式,适合新手,但是有些bug,
(2).Visual studio 功能更强,配置的更多,更容易出错,需要给VS安装Qt插件,需要把Qt SDK vs的编译器重新编译,现在也方便一些
qmake 和cmake
构建系统,通过qt写的程序,通过代码来生成代码,用到一系列元编程技术
使用qt creator 创建项目,会自动生成一些代码来,此处生成的代码就是一个类
此处就是要选择这个自动生成的父类是谁
QMainWindows,完整的应用窗口,包含菜单栏工具栏,状态栏
Qwidget表示一个控件,比如输入框,按钮,下拉框,复选按钮
Qdialog表示一个会话框
Qt中内置的类都是以前置Q开头的
mainwindow.ui非常关键
可以用图形化界面的方式快速生成界面
return exec() 表示让程序执行起来。
这个exec和Linux中的exec没用任何关系,只是名字一样。
XML是程序员自己约定的
Qt中使用xml文件就是去描述程序的界面是啥样的
进一步的qmake会调用相关的工具,依据这个xml文件,生成一些c++代码,从而把完整的界面构建出来
类似于Linux学习的makefile
makefile其实是一个非常古老的技术了
qmake搭配.pro搭配使用就能达到makefile类似的作用
ui_widget.h是widget.ui 和 xml生成的.h文件
qt为了让开发更爽,自己开发了一些基础类,比如Qstring,QVector
很多年之后,上述等内容已经打磨很好了,形成了C++标准。
很显然,这些已经引入了的Qt自己包装好的这些容器类,也不可能删了,你可以使用标准库的容器,也可以使用标准库的。
所以后续代码会经常见到QString,很少见到std::String。
所以入乡随俗吧
年之后,上述等内容已经打磨很好了,形成了C++标准。
很显然,这些已经引入了的Qt自己包装好的这些容器类,也不可能删了,你可以使用标准库的容器,也可以使用标准库的。
所以后续代码会经常见到QString,很少见到std::String。
所以入乡随俗吧