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

零基础学QT、C++(一)安装QT

目录

如何快速学习QT、C++呢?

一、编译器、项目构建工具

1、编译器(介绍2款)

2、项目构建工具

二、安装QT

1、下载QT安装包

2、运行安装包

3、运行QT creator

4、导入开源项目

总结

闲谈

如何快速学习QT、C++呢?

那就是项目驱动法,搞一个感兴趣的项目来玩玩!

这个QT项目,每个组件都是作者手写的,俺想用来做一个简单数据管理系统玩玩

https://github.com/Liniyous/ElaWidgetTools

所以,当务之急,就需要搭建一个QT、C++的运行环境,然后运行这个项目

一、编译器、项目构建工具

在搭建之前呢,我就被各种编译器,还有那个cmake搞得晕头转向

1、编译器(介绍2款)

MSVC(Microsoft Visual C++)微软提供的一款强大的 C++ 编译器

MinGW(Minimalist GNU For Window)是个C/C++编译器

(我这里选择的是MSVC)反正能用就行~

他们的区别,就自行问ai

2、项目构建工具

Cmake就是一个项目构建工具(和Maven类似)

不过Maven还提供了第三方库的管理,下载,安装,删除等等

下图是Maven的项目配置文件pom.xml

下图是Cmakelist.txt文件

特性CMakeMaven
主要功能项目构建工具,生成构建系统(如 Makefile 或 Visual Studio 项目)项目构建工具 + 依赖管理工具
配置文件CMakeLists.txtpom.xml
依赖管理不直接提供依赖管理,需要手动或通过 find_package 查找库提供强大的依赖管理,自动下载和安装第三方库
跨平台支持支持跨平台(Windows、Linux、macOS 等)主要针对 Java 项目,跨平台性依赖于 JVM
构建系统生成生成 Makefile、Ninja、Visual Studio 项目等不生成构建系统,直接调用编译器(如 javac)
语言支持主要用于 C/C++,但也支持其他语言(如 Fortran)主要用于 Java,但也支持其他语言(通过插件)
插件生态插件较少,功能相对单一插件丰富,功能强大(如编译、测试、打包等)

二、安装QT

QT的安装面板会让我们选择安装MinGW编译器,也可以选择安装MSVC编译器

还会有qmake和Cmake的构建工具,这些我们都可以在面板里面自行选择

总之,QT面板已经为我们做了很多东西,我们只需要点点点就可以了,他都会集成好的

官方下载速度有点慢,而且QT自Qt 5.15版本后不在支持离线安装包下载(非商业版本,开源)

1、下载QT安装包

官方下载网站:

Index of /archive/qtcreator

清华园(推荐)速度快:

https://mirrors.tuna.tsinghua.edu.cn/qt/official_releases/online_installers

2、运行安装包

这里需要登录,自己注册一个就可以了,注册过程并不复杂

就是网络可能比较慢,耐心等待就行了,或者用用梯子

自定义安装 Custom Installation (自行选择安装目录)

自定义安装 Custom Installation (自行选择安装目录)

自定义安装 Custom Installation (自行选择安装目录)

跟着我的点就行了(如果后面有其他的安装需求,可以再打开这个面板,更新组件)

跟着我的点就行了(如果后面有其他的安装需求,可以再打开这个面板,更新组件)

跟着我的点就行了(如果后面有其他的安装需求,可以再打开这个面板,更新组件)

  • 我这里选择了MSVC编译器,没有选择MinGW(看个人选择吧)
  • QT版本我选择了6.8.2
  • 还有其他那些跟我的一样就行了

点击【安装】

接下来就耐心等待下载吧

如果出现弹窗(重试就行了)(期间他可能会弹出很多次,反正重试就可以了)

3、运行QT creator

我们可以创建一个项目看看

  • 这里就要选择构建工具(我们就选择Cmake吧)
  • Cmake和qmake的区别自行百度(或者问问ai)

创建一个项目,然后ctrl+R运行

4、导入开源项目

ElaWidgetToolshttps://github.com/Liniyous/ElaWidgetTools下载项目之后,放到一个文件夹里面

然后打开QT creator,选择打开项目

等待项目加载完成(下图是加载完成后的样子,有警告也问题不大)

加载完成后,直接ctrl+R运行(等待他编译一会就好了)

然后,就可以开始我们的魔改啦~

总结

1、了解C++的编译器、构建工具

2、安装QT creator,他里面集成好了C++编译器和构建工具

3、我们可以直接使用QT creator来运行项目,这里面还有很多丰富的示例,供我们学习

闲谈

  • QT creator里面有QT文档
  • 什么不懂搜什么
  • 不过现在有ai了,我都是ai梭哈,2333~

有什么不懂的,直接问ai,比百度来得快

  • 接下来就是快速过一遍菜鸟教程里面的C++
  • 然后开始看项目代码
  • 把项目代码丢给ai,让他加上注释
  • 对代码有疑惑,就问他为什么这样写

wxWidgets是一个开源的跨平台的C++构架库(framework)

桌面端框架还有很多很多...

C++学起来,当初配置环境就搞得我摸不着头脑

半天看不到 成果,心急得很!不过还好有大佬的耐心指导!

大佬b站:山岳两茫茫的个人空间-山岳两茫茫个人主页-哔哩哔哩视频

相关文章:

零基础学QT、C++(一)安装QT

目录 如何快速学习QT、C呢? 一、编译器、项目构建工具 1、编译器(介绍2款) 2、项目构建工具 二、安装QT 1、下载QT安装包 2、运行安装包 3、运行QT creator 4、导入开源项目 总结 闲谈 如何快速学习QT、C呢? 那就是项目驱动法&…...

SQL注入(SQL Injection)详解与实战

文章目录 一、什么是SQL注入?二、常见SQL注入类型三、手动注入步骤(以CTF题目为例)四、CTF实战技巧五、自动化工具:SQLMap六、防御措施七、CTF例题八、资源推荐 一、什么是SQL注入? SQL注入是一种通过用户输入构造恶意…...

【Prometheus】prometheus结合domain_exporter实现域名监控

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…...

Java 设计模式之命令模式

文章目录 Java 设计模式之命令模式概述UML代码实现简单实现复杂实现 Java 设计模式之命令模式 概述 命令模式(Command):将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可…...

BT401双模音频蓝牙模块如何开启ble的透传,有什么注意事项

BT401音频蓝牙模块如何开启ble的透传? 首先BT401的蓝牙音频模块,分为两个版本,dac版本和iis数字音频版本 DAC版本:就是BT401蓝牙模块【9和10脚】直接输出模拟音频信号,也就是说,直接推动耳机可以听到声音 …...

利用二分法+布尔盲注、时间盲注进行sql注入

一、布尔盲注&#xff1a; import requestsdef binary_search_character(url, query, index, low32, high127):while low < high:mid (low high 1) // 2payload f"1 AND ASCII(SUBSTRING(({query}),{index},1)) > {mid} -- "res {"id": payloa…...

Vue 项目登录的基本流程

Vue 用户登录的基本流程包括以下6个步骤&#xff1a; 步骤&#xff1a; 1. 创建登录表单 在前端&#xff0c;首先要创建一个登录表单&#xff0c;用户输入账号&#xff08;用户名、邮箱、手机号等&#xff09;和密码。 示例&#xff1a;Login.vue <template><div…...

kubernetes源码分析 kubelet

简介 从官方的架构图中很容易就能找到 kubelet 执行 kubelet -h 看到 kubelet 的功能介绍&#xff1a; kubelet 是每个 Node 节点上都运行的主要“节点代理”。使用如下的一个向 apiserver 注册 Node 节点&#xff1a;主机的 hostname&#xff1b;覆盖 host 的参数&#xff1…...

Web3 开发者周刊 36 | 构建自主未来:Agent、可扩展性与赏金

欢迎来到 Web3 开发者周刊 36&#xff0c;这里汇聚了赋能您的 Web3 构建之旅的各种资源。本周我们将剖析基于Agent的系统&#xff0c;讨论来自 Vitalik 关于以太坊 L1 和 L2 的最新思考&#xff0c;并提供最新高价值Bounty消息。 开始Build吧&#xff01; ✅ One Trillion Age…...

零基础入门机器学习 -- 第十一章机器学习模型的评估与优化

如何判断你的模型到底行不行&#xff1f; 11.1 为什么需要评估模型&#xff1f; 场景设定&#xff1a;信用卡欺诈检测 想象你是ABC银行的风控经理&#xff0c;你每天的工作就是盯着上百万笔交易&#xff0c;防止客户的信用卡被盗刷。 你们银行新推出了一款机器学习模型&…...

菜鸟之路Day15一一IO流(一)

菜鸟之路Day15一一IO流&#xff08;一&#xff09; 作者&#xff1a;blue 时间&#xff1a;2025.2.8 文章目录 菜鸟之路Day15一一IO流&#xff08;一&#xff09;0.概述1.初识IO流1.1.什么是IO流&#xff1f;1.2.IO流的作用1.3.IO流的分类 2.IO流的体系结构3.字节输出流的基本…...

动手学Agent——Day2

文章目录 一、用 Llama-index 创建 Agent1. 测试模型2. 自定义一个接口类3. 使用 ReActAgent & FunctionTool 构建 Agent 二、数据库对话 Agent1. SQLite 数据库1.1 创建数据库 & 连接1.2 创建、插入、查询、更新、删除数据1.3 关闭连接建立数据库 2. ollama3. 配置对话…...

JSONObject,TreeUtil,EagelMap,BeanUtil使用

目录 JSONObject的使用 TreeUtil的使用 EagleMap使用 安装 application.yml配置 springboot导入依赖 配置信息 简单使用 如果想获取这个json字符串里面的distance的值 BeanUtil拷贝注意 JSONObject的使用 假如我现在要处理这样的json数据 可以直接使用JSONUtil.parseObj…...

Unity嵌入到Winform

Unity嵌入到Winform Winform工程&#x1f308;...

TCP/UDP协议与OSI七层模型的关系解析| HTTPS与HTTP安全性深度思考》

目录 OSI 7层模型每一层包含的协议&#xff1a; TCP和UDP协议&#xff1a; TCP (Transmission Control Protocol)&#xff1a; UDP (User Datagram Protocol)&#xff1a; 数据包流程图 TCP与UDP的区别&#xff1a; 传输层与应用层的关联 传输层和应用层的关联&#xf…...

《Zookeeper 分布式过程协同技术详解》读书笔记-2

目录 zk的一些内部原理和应用请求&#xff0c;事务和标识读写操作事务标识&#xff08;zxid&#xff09; 群首选举Zab协议&#xff08;ZooKeeper Atomic Broadcast protocol&#xff09;文件系统和监听通知机制分布式配置中心, 简单Demojava code 集群管理code 分布式锁 zk的一…...

缺陷检测之图片标注工具--labme

一、labelme简介 Labelme是开源的图像标注工具&#xff0c;常用做检测&#xff0c;分割和分类任务的图像标注。 它的功能很多&#xff0c;包括&#xff1a; 对图像进行多边形&#xff0c;矩形&#xff0c;圆形&#xff0c;多段线&#xff0c;线段&#xff0c;点形式的标注&a…...

机器学习_13 决策树知识总结

决策树是一种直观且强大的机器学习算法&#xff0c;广泛应用于分类和回归任务。它通过树状结构的决策规则来建模数据&#xff0c;易于理解和解释。今天&#xff0c;我们就来深入探讨决策树的原理、实现和应用。 一、决策树的基本概念 1.1 决策树的工作原理 决策树是一种基于…...

请解释一下Standford Alpaca格式、sharegpt数据格式-------deepseek问答记录

1 Standford Alpaca格式 json格式数据。Stanford Alpaca 格式是一种用于训练和评估自然语言处理&#xff08;NLP&#xff09;模型的数据格式&#xff0c;特别是在指令跟随任务中。它由斯坦福大学的研究团队开发&#xff0c;旨在帮助模型理解和执行自然语言指令。以下是该格式的…...

ubuntu 安装管理多版本python3 相关问题解决

背景&#xff1a;使用ubuntu 22.04 默认python 未3.10.编译一些模块的时候发现需要降级到python3.9.于是下载安装 下载&#xff1a; wget https://www.python.org/ftp/python/3.9.16/Python-3.9.16.tgz解压与编译 tar -xf Python-3.9.16.tgz cd Python-3.9.16 ./configure -…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表&#xff1f;1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

网站指纹识别

网站指纹识别 网站的最基本组成&#xff1a;服务器&#xff08;操作系统&#xff09;、中间件&#xff08;web容器&#xff09;、脚本语言、数据厍 为什么要了解这些&#xff1f;举个例子&#xff1a;发现了一个文件读取漏洞&#xff0c;我们需要读/etc/passwd&#xff0c;如…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...

GO协程(Goroutine)问题总结

在使用Go语言来编写代码时&#xff0c;遇到的一些问题总结一下 [参考文档]&#xff1a;https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现&#xff1a; 今天在看到这个教程的时候&#xff0c;在自己的电…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能

1. 开发环境准备 ​​安装DevEco Studio 3.1​​&#xff1a; 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK ​​项目配置​​&#xff1a; // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...