当前位置: 首页 > news >正文

QT学习笔记1(QT和QT creator介绍)

QT学习笔记1(QT和QT creator介绍)

Qt 是一个跨平台的应用开发框架,主要用于图形用户界面(GUI)应用的开发,但也支持非GUI程序的开发。Qt 支持多种平台,如Windows、macOS、Linux、iOS和Android,并提供了一致的API,允许开发者一次编写代码,然后在多个平台上编译和运行。

Qt 的主要特点
跨平台开发
信号和槽机制:Qt 特有的信号和槽机制用于对象间的通信,非常适合事件驱动的应用开发。
丰富的组件库:Qt 提供了大量的UI组件、工具库、网络库、多媒体
国际化支持:Qt 自带国际化工具,使得应用程序支持多种语言的转换变得更加方便。
集成的开发工具:Qt 提供了集成开发环境(IDE),包括设计器(Qt Designer)、资源编辑器等工具来帮助开发者高效开发

Qt Creator 是 Qt 的官方集成开发环境(IDE),专门为Qt应用的开发而设计。它支持C++、QML(Qt Modeling Language)、Python等语言,并集成了丰富的调试和设计工具,帮助开发者更加便捷地开发应用。

Qt Creator 的主要功能:
项目管理:不同类型的项目管理,如纯C++项目、QML项目等
代码编辑和补全:智能代码补全、语法高亮、代码重构等
UI设计工具:内置了Qt Designer,开发者可以通过拖拽方式设计用户界面,而不需要手动编写UI代码。
调试工具:支持多平台调试,开发者可以直接在 Qt Creator 中使用GDB或LLDB等调试工具。
跨平台构建:提供了跨平台的编译和构建工具,支持多种构建系统(如qmake、CMake等)。
版本控制:集成了版本控制系统(如Git、Subversion等)

开发流程
跨平台开发的典型流程如下:

编写跨平台代码:使用 Qt 框架开发应用时,尽量避免使用特定于操作系统的API。
选择编译器和工具链:根据目标平台选择适当的编译器。例如,Windows 用 MSVC,Linux 用 GCC,macOS 用 Clang。

在 Windows 上你可以使用 MSVC 或 MinGW 编译项目。
在 macOS 和 Linux 上使用 Clang 或 GCC 编译同一项目。
Android 和 iOS 开发需要使用特定的编译工具链,如 Android NDK 或 Xcode 的工具。
在不同平台编译:在每个平台上使用相应的编译工具链来编译应用程序,并进行测试

“Qt Creator 4.11.0 Based on Qt 5.14.0 (MSVC 2017, 32 bit)” 表示的是 Qt Creator 和 Qt 版本以及编译环境之间的关系。让我们逐步分析:

1. Qt Creator 4.11.0
这是 Qt Creator 的版本号,表示你正在使用的是 4.11.0 版本的 Qt Creator。
Qt Creator 是集成开发环境(IDE),帮助你更方便地编写、调试和管理使用 Qt 框架开发的项目。
2. Based on Qt 5.14.0
这意味着 Qt Creator 4.11.0 是基于 Qt 5.14.0 版本构建的。
Qt 5.14.0 是 Qt 框架的一个具体版本,它提供了开发应用程序所需的核心库和模块(如 Qt Widgets、Qt Quick、Qt Core 等)。
Qt Creator 本身也是用 Qt 框架开发的应用程序,这里指的是 Qt Creator 使用了 Qt 5.14.0 的 API 和库来构建其自身的功能和界面。
3. MSVC 2017, 32 bit
这是 Qt Creator 在编译 Qt 项目时将使用的 编译器和工具链的类型。
MSVC 2017 表示使用的是 Microsoft Visual C++ 2017 作为编译器,常用于 Windows 平台开发。
32 bit 表示编译器生成的应用程序将是 32位 的。这意味着你的 Qt 项目将使用 32 位的 MSVC 2017 编译器来编译和生成 32 位的可执行文件。
总结他们的关系:
Qt Creator 是一个 IDE,用于管理和开发使用 Qt 框架构建的应用程序。
Qt 5.14.0 是 Qt 框架的版本,包含了 Qt 提供的库和工具,帮助你构建跨平台的应用程序。Qt Creator 本身是使用这个框架开发的。
MSVC 2017, 32 bit 是 Qt Creator 使用的 编译器工具链,用于编译和生成你的 Qt 项目。它确保你开发的应用程序能够在 Windows 上以 32 位格式运行。
因此,Qt Creator 是你用来开发 Qt 项目的 IDE,它本身是基于 Qt 框架开发的,而它又使用 MSVC 编译器来编译你的项目。

Built on Dec 10 2019 12:27:13
表示这个版本的 Qt Creator 是在 2019年12月10日 编译和构建的,时间是 12:27:13。
3. From revision 017ed74400
这部分表示代码版本控制中的 修订号(revision number)。这是唯一标识这次构建的代码库的一个代码提交版本号,帮助开发者追踪构建时使用的代码版本。
4. Copyright 2008-2019 The Qt Company Ltd. All rights reserved.
这是 Qt Creator 和 Qt 框架的版权声明,表示从 2008年到2019年,Qt Creator 的版权归 The Qt Company Ltd. 所有。
5. The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
这是一条法律免责声明,表示这个软件是 按原样 提供的,没有任何形式的担保。具体来说:
NO WARRANTY OF ANY KIND:没有任何形式的保证。
INCLUDING THE WARRANTY OF DESIGN:包括关于设计的保证。
MERCHANTABILITY:没有对适销性(即能否符合市场需求)的保证。
FITNESS FOR A PARTICULAR PURPOSE:没有对特定用途适用性的保证。
这意味着 Qt Creator 是一个免费开源的软件,Qt 公司不对其功能或特定用途的适用性提供任何法律保证或承诺。用户使用该软件需要自行承担风险

相关文章:

QT学习笔记1(QT和QT creator介绍)

QT学习笔记1(QT和QT creator介绍) Qt 是一个跨平台的应用开发框架,主要用于图形用户界面(GUI)应用的开发,但也支持非GUI程序的开发。Qt 支持多种平台,如Windows、macOS、Linux、iOS和Android&a…...

存储电话号码的数据类型,用 int 还是用 string?

在 Java 编程中,存储电话号码的选择可以通过两种常见方式进行:使用 int 类型或 String 类型。这种选择看似简单,但实际上涉及到 JVM 内部的字节码实现、内存优化、数据表示、以及潜在的可扩展性问题。 Java 基本数据类型与引用数据类型的差异…...

【目标检测】工程机械车辆数据集2690张4类VOC+YOLO格式

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2694 标注数量(xml文件个数):2694 标注数量(txt文件个数):2694 标注…...

target_link_libraries()

target_link_libraries() 是 CMake 中的一个命令,用于指定目标(如可执行文件或库)所依赖的其他库。其主要作用包括: 链接库:将指定的库链接到目标上,使目标能够调用这些库中的函数和使用其功能。 管理依赖…...

Javascript数组研究09_Array.prototype[Symbol.unscopables]

Symbol.unscopables 是 JavaScript 中一个相对较新的符号(Symbol),用于控制对象属性在 with 语句中的可见性。它主要用于内置对象,如 Array.prototype,以防止某些方法被引入到 with 语句的作用域中,避免潜在…...

SkyWalking 自定义链路追踪

对项目中的业务方法&#xff0c;实现链路追踪&#xff0c;方便我们排查问题 引入依赖 <!‐‐ SkyWalking 工具类 ‐‐> <dependency> <groupId>org.apache.skywalking</groupId> <artifactId>apm‐toolkit‐trace</artifactId> <vers…...

Linux驱动开发(速记版)--设备模型

第八十章 设备模型基本框架-kobject 和 kset 80.1 什么是设备模型 设备模型使Linux内核处理复杂设备更高效。 字符设备驱动适用于简单设备&#xff0c;但对于电源管理和热插拔&#xff0c;不够灵活。 设备模型允许开发人员以高级方式描述硬件及关系&#xff0c;提供API处理设备…...

动手学深度学习(李沐)PyTorch 第 6 章 卷积神经网络

李宏毅-卷积神经网络CNN 如果使用全连接层&#xff1a;第一层的weight就有3*10^7个 观察 1&#xff1a;检测模式不需要整张图像 很多重要的pattern只要看小范围即可 简化1&#xff1a;感受野 根据观察1 可以做第1个简化&#xff0c;卷积神经网络会设定一个区域&#xff0c…...

新编英语语法教程

新编英语语法教程 1. 新编英语语法教程 (第 6 版) 学生用书1.1. 目录1.2. 电子课件 References A New English Grammar Coursebook 新编英语语法教程 (第 6 版) 学生用书新编英语语法教程 (第 6 版) 教师用书 1. 新编英语语法教程 (第 6 版) 学生用书 https://erp.sflep.cn/…...

Golang 服务器虚拟化应用案例

推荐学习文档 golang应用级os框架&#xff0c;欢迎stargolang应用级os框架使用案例&#xff0c;欢迎star案例&#xff1a;基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识&#xff0c;这里有免费的golang学习笔…...

Elasticsearch基础_4.ES搜索功能

文章目录 一、搜索辅助功能1.1、指定返回的字段1.2、结果计数1.3、结果分页 二、搜索匹配功能2.1、查询所有文档2.2、term级别查询2.2.1、term查询2.2.2、terms查询2.2.3、range查询2.2.4、exists查询 2.3、布尔查询2.3.1、must&#xff0c;should&#xff0c;must_not2.3.2、f…...

Elasticsearch要点简记

Elasticsearch要点简记 1、ES概述2、基础概念&#xff08;1&#xff09;索引、文档、字段&#xff08;2&#xff09;映射&#xff08;3&#xff09;DSL 3、架构原理4、索引字段的数据类型5、ES的三种分页方式&#xff08;1&#xff09;深度分页&#xff08;fromsize&#xff09…...

【通信协议】IIC通信协议详解

IIC&#xff08;Inter-Integrated Circuit&#xff09;通信协议&#xff0c;又称为I2C&#xff08;Inter-Integrated Circuit 2&#xff09;协议&#xff0c;是一种广泛使用的串行通信协议。它由Philips Semiconductor&#xff08;现NXP Semiconductors&#xff09;开发&#x…...

2024年中国科技核心期刊目录(社会科学卷)

2024年中国科技核心期刊目录 &#xff08;社会科学卷&#xff09; 序号 期刊代码 期刊名称 1 SC02 JOURNAL OF S…...

用Python集成免费IP归属地查询API

IP查询的优势是什么&#xff1f; IP查询是一种强大的工具&#xff0c;能够快速提供关于IP地址的信息&#xff0c;如地理位置、互联网服务提供商&#xff08;ISP&#xff09;、连接类型等。这些数据在多种场景下都非常有用&#xff0c;帮助用户理解网络环境和用户行为。 首先&…...

C 数组

C 数组 数组是C语言中的一种基本数据结构&#xff0c;用于存储一系列相同类型的数据。它是连续的内存分配&#xff0c;允许通过索引快速访问元素。本文将详细介绍C数组的概念、使用方法、以及注意事项。 1. 数组的概念 数组是一个集合&#xff0c;可以存储一定数量的元素。在…...

【Unity】unity安卓打包参数(个人复习向/有不足之处欢迎指出/侵删)

1.Texture Compression 纹理压缩 设置发布后的纹理压缩格式 Use Player Settings:使用在播放器设置中设置的纹理压缩格式 ETC&#xff1a;使用ETC格式&#xff08;兼容&#xff09; ETC2&#xff1a;使用ETC2格式&#xff08;很多设备不支持&#xff09; ASTC&#xff1a;使用…...

C0016.Clion中qDebug()打印输出中文时,都是问号??????的解决办法

问题描述 在clion中使用qDebug打印输出中文内容时&#xff0c;都是&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;如下图&#xff1a; 注意&#xff1a;修改该文件的编码格式就行&#xff0c;该文件名为apr.cpp&#xff1b; 解决办法...

C++ priority_queue 优先队列构造大根堆和小根堆

priority_queue的三个参数 template <class T, class Container std::vector<T>, class Compare std::less<typename Container::value_type>> class priority_queue;1、元素类型 2、底层容器类型&#xff0c;默认vector 3、比较函数&#xff08;传入的是…...

音视频入门基础:FLV专题(9)——Script Tag简介

一、SCRIPTDATA 根据《video_file_format_spec_v10_1.pdf》第75页到76页&#xff0c;如果某个Tag的Tag header中的TagType值为18&#xff0c;表示该Tag为Script Tag&#xff08;脚本Tag&#xff0c;又称Data Tag、SCRIPTDATA tag&#xff09;。这时如果Filter的值不为1表示未加…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的&#xff0c;根据Excel列的需求预估的工时直接打骨折&#xff0c;不要问我为什么&#xff0c;主要…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...