Qt值得学习吗?详解Qt的几种开发方式
qt值得学习吗?
嵌入式要学的东西真的很多,我们可能会说不写界面的话就不用学qt了?我不赞同。
Qt的实现主要是采用p-impl手法,实现接口与实现分离,它有很好的消息循环机制,有的对象与线程的相关性,它也有借助moc生成反射元信息,这种设计方法至今仍然非常适用。
qt内核部分其实是完全和界面无关的,你完全可以抛开Qt GUI部分来学习和使用Qt。当你完完全全学习了qt及其理念后,你会发现写优雅的代码是一件十分简单的事情,它可以应用到你之后的所有过程中去。
那么哪种Qt开发方式较好或者容易入门呢?
QT做UI界面一般单纯使用C++硬编码的方式,可以直接采用QWidget部件来做,而不是采用QT Designer做UI界面,也不是采用QML+Javascript,虽然灵活但是这样的话代码量大,通常采用QT开发,有如下三种方式:
使用QT GUI框架,单纯硬编码
使用QT Designer做UI界面,类似于MFC一样拖控件,然后再使用C++写逻辑。
采用QML做UI,JavaScript写逻辑,C++写后台,三种语言混合编程。
那么Qt常见的有多少种开发方式呢?一般情况下分为下面2种
第一种:纯QtCreator方式,QtCreator编码+MinGW或MSVC或其他编译。
第二种:VS+Qt库,把Qt当成一个界面库来在VS中调用。VS编码+MSVC编译。
使用VS+Qt的正确打开方式
如果开发的程序只管windows上跑,不用跨平台,也不关心是否需要使用Qt Creator打开,那么推荐你使用VS+Qt方式进行开发。
这种情况需要安装VS、Qt软件,并且在VS中安装QT插件,配置环境变量等等,具体的安装配置教程大家可以参考网上的,亲手尝试一下,本文注重方法。
装好重新打开VS,菜单栏多出个QT VS Tools,点击QT Options可以进行下一步操作
VS速度和调试功能完爆Qt Creator,开发起来很爽。
使用Qt Creator的打开方式
QtCreator+MSVC
需要安装VS(我们主要使用它的编译器)、Qt Creator软件,MSVC调试器安装,通过windows SDK工具安装调试器。配置Qt Creator编译器和调试器
打开Qt Creator,选择“工具”->“选项”,再选择“Kits”->“编译器”,可以看到Qt已经自动检测到MSVC编译器了。
同时在“Kits”->“Debuggers”下,也自动检测到调试器了。
然后我们选择“Kits”->“构建套件”,然后选择Desktop Qt 5.12.0 MSVC2017 64bit
,
配置C/C++编译器均为:Microsoft Visual C++ Compiler 15.0(x86_amd64)
;
配置调试器为:Auto-detected CDB at D:\Windows Kits\10\Debuggers\x64\cdb.exe
。
Qt Creator+MinGW
安装Qt creator后,直接使用Qt Creator编码,使用自带的MinGW编译,这个是最简单的,无需外界其他任何辅助。
同时安装步骤也是最简单的,直接装完就可以做开发,没有过多的配置过程。
推荐使用QtCreator+MSVC方式,在速度和跨平台都占优,调试功能稍弱,另外这种方式不存在工程转换的问题,可以更好的支持跨平台开发。
结论
如果需要考虑跨平台,那么最好不要使用VS+Qt这种方式,工程转换路径、库、配置有很多麻烦的地方;
MSVC在编译速度和运行速度上都完爆MinGW,不推荐使用MinGW编译,这个大家体验一下就知道了。
‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧ END ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧
长按前往图中包含的公众号关注
Qt值得学习吗?详解Qt的几种开发方式相关推荐
- qt linux 串口eventdriven,详解 Qt 串口通信程序全程图文 (1)
Qt 串口通信程序全程图文 是本文介绍的内容,在Qt中并没有特定的串口控制类,现在大部分人使用的是第三方写的qextserialport类,我们这里也是使用的该类.我们可以去 http://sourc ...
- Qt Quick 之 PathView 详解
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Path ...
- Qt图形视图框架详解-安晓辉-专题视频课程
Qt图形视图框架详解-12227人已学习 课程介绍 介绍Qt中的Graphics View Framework,涉及View.Scene.Item的关系,如何自定义QGraphicsI ...
- QT:常用函数详解--常用操作记录(个人笔记)
QT:常用函数详解(个人笔记) PS:一下内容个人笔记,要求自己看懂,随笔,阅读体验会很差很差! Qt setContentsMargins()函数 函数原型:void QLayout::setCon ...
- 详解 QT 主要类 QWidget
QWidget类是所有用户界面对象的基类,每一个窗口部件都是矩形,并且它们按Z轴顺序排列的.一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分. 先来看内容. AD: 2013云计算架构师 ...
- Qt QPushButton按钮用法详解
Qt QPushButton按钮用法详解 按钮是 GUI 开发中最常用到的一种控件,作为一款著名的 GUI 开发框架,Qt 提供了很多种按钮,比如 QPushButton(普通按钮).QRadioBu ...
- Qt on Android 图文详解Hello World全过程
这是系列文章中的一篇,阅读本文前请先阅读<Windows下Qt 5.2 for Android开发入门>,以便确保开发环境和作者一致. 部分文章被转发/转载却没有注明出处,特此声明:版权所 ...
- 基于瑞芯微3399的嵌入式linux,瑞芯微x3399 linux QT平台WIFI移植详解
原标题:瑞芯微x3399 linux QT平台WIFI移植详解 第1章 内核配置 硬件平台:x3399开发板或ibox3399卡片电脑 操作系统:linux4.4.5+ QT5.6 WIFI型号:AP ...
- 详解Qt的几种开发方式
1.qt值得学习吗? 2.那么哪种Qt开发方式较好或者容易入门呢? 3.使用VS+Qt的正确打开方式 4.使用Qt Creator的打开方式 5.结论 1.qt值得学习吗? 嵌入式要学的东西真的很多, ...
最新文章
- MySQL数据类型--------字符串类型实战
- 详解Struts2 Action名称的搜索顺序
- 贝叶斯定理与贝叶斯估计
- 概率论的一些基本问题
- JZOJ 3766. 【BJOI2014】大融合
- EF Core下利用Mysql进行数据存储在并发访问下的数据同步问题
- android开发(13) 尝试在流布局中移动控件
- 软件测试工程师核心竞争力(转)
- DevOps(过程、方法与系统的统称)是什么
- 超详细springboot热部署
- 总结我在架构师升级过程中的那些坑以及各种体会
- python中的sorted是什么意思_Python中sorted()排序与字母大小写的问题
- USB Storage启动EBox4300
- iOS 来电阻止和身份识别
- 一款自制calendar插件
- Android属于绑定服务特点是,Android P HIDL服务绑定模式与直通模式的分析 (原创)
- 头歌平台web实训部分作业
- 如何在pdf文件上进行电子签名
- 我这些年从来没有用过算法,除了出去面试的时候
- 洛谷 P4233 射命丸文的笔记 ntt
热门文章
- DuangDuangDuang!码云项目的 Readme.md 特殊技能
- indy10 UDP实例
- Linux内核源代码分析-目录
- linux下软件的基本安装和卸载
- va_list/va_start/va_end的使用
- 学成在线--0.项目概述
- Diango博客--15.通过 Django Pagination 实现简单分页(一)
- jstl处理栏目与子栏目_芬顿氧化法废水处理工程技术规范(征求意见稿)
- 热血街头Java,下载_我爱法语 V3.01 多国语言版_6z6z下载站
- dos攻击命令_Kali Linux系列之拒绝服务攻击(DOS)实战(上)