作为一名嵌入式开发行者QT是必须要学的,也许现在不学以后也要学习的。一方面,在嵌入式初学阶段,也就是裸机开发,可能需要自己写上位机,QT就是一个做上位机的一个好用的工具,一般只要会c++学习QT一天就可以入门。另一方面,市场上任何一款产品几乎都带图形界面,市场上很火的Android、IOS编程无非也是GUI app编程,GUI编程都是差不多,学习Qt后再学习Android、IOS,是很容易的。就算不学习Android、IOS,由于Qt跨平台特性,通过Qt写的程序也可以在Android、IOS平台上运行。

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方式进行开发。

使用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方式,在速度和跨平台都占优,调试功能稍弱,另外这种方式不存在工程转换的问题,可以更好的支持跨平台开发。

嵌入式开发必须学习qt吗?相关推荐

  1. 嵌入式开发需要学mysql吗_学习嵌入式开发需要学习哪些课程?如何学习?

    针对很多的大学生嵌入式开发初学者来说,对嵌入式开发的学习还很迷茫.今天信盈达嵌入式培训老师给出参考建议:首先:嵌入式开发需要学习哪些课程?因为嵌入式开发的方向不同,所学习的内容会有所区别,但是无论是哪 ...

  2. 零基础学习嵌入式开发难吗?嵌入式开发需要学习什么

    对于零基础刚开始学习嵌入式的同学很多都会有这样的一个想法,嵌入式开发需要学习什么?如果是电子或计算机专业的人,相对来说,会比较容易入门;而非电子或计算机专业的人,应该先从基本的电路和C语言编程开始学. ...

  3. ARM嵌入式开发板学习路线指引

    如何入门嵌入式?嵌入式开发学习方法步骤  如何入门嵌入式?嵌入式开发学习路线指引  嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有linux,android.  平台:Cortex-A9 ...

  4. 一位久经沙场的嵌入式er站在初学者角度谈谈嵌入式开发与学习的一些问题

    一位久经沙场的嵌入式er站在初学者角度谈谈嵌入式开发与学习的一些问题 在刚刚涉足嵌入式开发的时候,总想找到这样一本书,它可以解决我一些这样那样的疑惑.但是遗憾的是,到现在也没有这样一本书面世,而且我想 ...

  5. 嵌入式开发需要学习哪些东西

    刚刚读到这篇文章,对于刚入门嵌入式来说挺有用的,献给向我一样正在迷茫,苦于没有头绪,没人指引的学习朋友们. 主要讨论下嵌入式技术学习方法,主要是针对嵌入式软件. 嵌入式技术是一门边缘科学(又称交叉科学 ...

  6. 嵌入式入门学习笔记6:[转]嵌入式开发需要学习哪些东西

    本文转自迅为开发板iTOP-4412开发板实战手册:http://www.topeetboard.com 刚刚读到这篇文章,对于刚入门嵌入式来说挺有用的,献给向我一样正在迷茫,苦于没有头绪,没人指引的 ...

  7. #杂谈 个人嵌入式开发的学习

    本人目前从事的是嵌入式软件开发的相关工作.这是一个关于个人做项目时用过的开发工具的杂谈,仅是为了记录学习经历,同时也为和我有同样瞎搞东西的爱好者提供一个学习思路. 前言 我的技术栈: 下面介绍一下我用 ...

  8. 嵌入式开发调试学习与思考

    截至今天,自己负责的一个项目算是告一段落,前前后后5个多月时间. 该项目是对公司设计的基于powerpc的处理器进行FPGA仿真阶段的软件验证,以及bootloader和kernel移植,以便芯片进行 ...

  9. STM32MP157嵌入式开发—5、QT应用开发(2):GRBL控制软件Candle的编译与运行

    二.GRBL控制软件Candle的编译与运行 2.1.通过下面git链接下载Candle跨平台源码 文件也可以在后面的网盘链接获取:链接/MP157/QT开发环境搭建/QT应用解压到STM32MP15 ...

最新文章

  1. 下列哪些是java语言的条件执行语句_13春福师《JAVA程序设计》在线作业二
  2. 软件管家公众号_软件安装管家:大学生最值得关注的公众号
  3. 腾讯年度性爱报告被曝,最后一条数据我羞愧了!
  4. 堆排序算法c语言筛选法,【排序】排序算法之选择排序
  5. 简单Linux磁盘管理
  6. 叨叨20220304
  7. Swagger2 最全注解说明(转载)
  8. Go http访问使用代理
  9. 大道至简第七第八章读后感
  10. jQuery中的阻止默认行为
  11. HTML网页设计:十一、表单
  12. SARS-CoV-2的近端起源
  13. 某一年某一年_链接一年
  14. 获取当前日期上周的周一和周日日期
  15. Object-Oriented Programming Summary Ⅲ
  16. uniapp 热更新和整包更新
  17. 右键删除或新增 Open Folder as Intellij IDEA Project
  18. JDBC,你真的知道怎么用吗?
  19. 使用U盘安装Archlinux
  20. 计算机硬件加速怎么开,硬件加速有什么用(电脑如何开启硬件加速)

热门文章

  1. lua table是否为空的判断
  2. 观察者模式实际应用场景「扩展点实战系列」- 第439篇
  3. 关于redis服务的代码编码
  4. 恒源智GPU云服务器
  5. SpringData示例
  6. 大数据开发超高频面试题!大厂面试必看!包含Hadoop、zookeeper、Hive、flume、kafka、Hbase、flink、spark、数仓等
  7. IO多路复用select,poll epoll以及区别
  8. 2023年的深度学习入门指南(10) - CUDA编程基础
  9. css clip-path 画五角星
  10. Centos6.8下安装Mysql5.6.14,连接mysql及增删改查,通过Mysql-Front远程连接(开启端口、允许远程连接)