关于QT跨平台和编译器的理解
1、概述
Qt工具包是一个完整封装的C 类库(可以类比MFC),并且使用一次编写,随处编译的方式,可用于构建多平台图形用户界面。
2、QT跨平台
qt在不同操作系统下都实现有不同的底层类库,然后再暴露出一个公共的应用层接口,我们做的开发就是基于这个公共的应用层接口来完成。所谓的跨平台是指基于qt写的代码是跨平台,而不是编译出来的文件跨平台,同一份代码需要放到另一个平台上时,需要用另一个平台的类库重新编译。一个简要的qt框架跨平台实现原理图:
3、QT编译器的选择
一般取决于你需要依赖的第三方库是哪来的。如果你的第三方库是msvc的,能可能就必须msvc,如果第三方库是mingw的可能就必须mingw。
像我们多平台开发的话,用的库基本上一定是Linux能用的库,而Linux能用的库一定是在mingw下支持会比较好。(mingw甚至能 include unistd.h 之类的Linux专用头文件),那就首选mingw。但如果有第三方库比如商业库需要引入,而它们的库是msvc库,就必须使用msvc了。
所以你用哪个编译真的不取决于你想用哪个,取决于你习惯用来自哪个平台的第三方库。如果是多平台Qt开发肯定是选择mingw更好。
而且WebEngine是MSVC特有的,用于网页开发,Linux上可以通过安装库来解决
QT 区分编译器类型
关于QT跨平台和编译器的理解相关推荐
- 为什么要用Qt开发(Qt跨平台应用开发)
一.为什么选择qt 1.跨平台,一次写代码多个平台编译.使跨平台应用达到各个平台原生应用的体验与流畅度.相比与java或c#在开发图形计算方面的软件时有非常好的使用体验与流畅度. 2.使用C++编程虽 ...
- 01-为什么要用Qt开发(Qt跨平台应用开发)
一.为什么选择qt 跨平台,一次写代码多个平台编译.使跨平台应用达到各个平台原生应用的体验与流畅度.相比与java或c#在开发图形计算方面的软件时有非常好的使用体验与流畅度. 使用C++编程虽然没有j ...
- Qt跨平台开发环境搭建
Qt跨平台开发环境搭建 1. 背景介绍 Qt是一个跨平台的C++图形用户界面应用程序框架.它提供给应用程序开发者丰富的图形用户界面所需的所有功能.而且,Qt很容易扩展,并且允许真正地组件编程. ...
- Qt 添加MSVC2017编译器(2022年保姆级教程,不安装完整VS)
目录 0. 前言 1. 前期准备 2. 安装 2.1 安装Qt 2.2 安装MSVC编译器和Windows 10 SDK 3. 配置 3.1 添加MSVC编译器并选择bat文件 3.2 传入脚本文件参 ...
- Qt平台和编译器说明-Android
Qt平台和编译器说明-Android 平台和编译器说明-Android Qt Creator中的Android开发 应用程序包 部署方式 使用Ministro进行部署 部署进行调试 插件和导入的特殊注 ...
- Qt Creator添加编译器
Qt Creator添加编译器 添加编译器 重新检测编译器 指定编译器设置 添加Nim编译器 添加自定义编译器 添加编译器 Qt在各种32位和64位平台上受支持,通常可以在每个平台上使用GCC,供应商 ...
- QT跨平台项目开发经验(项目打包)
1.代码编写 1.1 代码编写简短,代码运行效率高,适当注释.一般一个大型的项目,代码的运行效率要求较高,一般需要秒级响应,甚至毫秒级. 1.2 建议使用命名空间::的形式来访问该命名空间中的变量和函 ...
- Qt使用MSVC编译器关闭“warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失”警告的方法
Qt使用MSVC编译器关闭"warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为 Unicode 格式以防止数据丢失"警告的方法 [问 ...
- Qt使用MSVC编译器关闭“C4100:未引用的形参”警告的方法
Qt使用MSVC编译器关闭"C4100:未引用的形参"警告的方法 [问题描述] 在C++中,经常会定义一些虚函数作为接口类,这些虚函数本身基本是空函数,由派生类覆盖出具体的实现.一 ...
最新文章
- 关于百度地图api测距显示NaN的解决方案
- ruby watir 登陆邮箱
- C++11库中 steady_clock , system_clock和high_resolution_clock的区别
- 粽子SHOP-粽子商城官网-一款简洁大气的官网源码
- toolBar——工具栏
- kafka不使用自带zk_Centos安装kafka(使用自带的zookeeper)
- python socket 实现的简单http服务器
- (USB HID) Report Descriptor 理解
- 在图片上加入删除按钮
- java 反射覆盖方法_使用 Cobertura 和反射机制提高 Java 单元测试中的代码覆盖率...
- 生信学习笔记:生物信息学测序分析基本流程入门笔记
- 【转载】前端项目开发流程及技术选型
- qq三国华容道算法(拼图问题,8数码问题?)
- gitter 卸载_最佳Gitter频道:数学
- Python-从txt中获取所有带有书名号的内容,并去除重复内容
- Unity 图片切割九宫格
- PN结——“耗尽层”?
- cin gt gt n是c语言中的什么,c++中cinna是什么意思
- 云时代下主机安全防护建设,用RS-CDPS就够了
- Xshell安装与使用