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

qt的c++环境配置和c++基础【正点原子】嵌入式Qt5 C++开发视频

QT c++ 环境配置和c++基础

  • c++环境配置和工程创建
    •   1.配置步骤
    •   2.新建qt 工程目录和工程
    •   3.重启qt后打开最近的qt项目
  • c++基础-类和对象
    •   1.什么是类和对象
      •     A.类的定义
      •     B.类的结构表示
      •     C.类的访问权限
      •     D.对象的定义
      •     E.类和对象的关系
    •   2.类和对象在qt中的使用
      •     A.类在qt中进行定义
      •     B.对象在qt中的使用
  • c++基础-构造函数和析构函数
    •   1.构造函数的定义和在类中的定义
      •     A.构造函数的定义
      •     B.默认构造函数在类中的定义
      •     c.类中无定义默认构造函数时
    •   2.析构函数的定义和在类中的定义
      •     A.析构函数的定义
      •     B.默认析构函数在类中的定义
      •     c.类中无定义默认析构函数时
    •   3.构造函数和析构函数的使用
      •     A.构造函数在qt中定义
      •     B.析构函数在qt中定义
      •     C.构造和析构的使用


c++环境配置和工程创建

  1.配置步骤

    STEP1:配置软件源服务器地址
    STEP2:执行指令安装c语言和c++环境

sudo apt-get install gcc g++
sudo apt-get install lsb-core lib32stdc++6

    STEP3:用指令查看安装的gcc和g++版本,安装之后要重启qt

g++ -v
gcc -v

配置步骤总结
在这里插入图片描述

  2.新建qt 工程目录和工程

1.新建目录和工程的第一步

在这里插入图片描述

2.选择创建一个只有c++语言的工程

在这里插入图片描述

3.路径放在刚刚创建的文件夹,然后名称随意,后面全部点下一步直到点击到完成,这样就创建一个c++工程

在这里插入图片描述

如果没有配置c++环境就会直接报错

在这里插入图片描述

  3.重启qt后打开最近的qt项目

STEP1:选择最近使用的项目

在这里插入图片描述

STEP2:点击configure project

在这里插入图片描述

STEP3:打开后发现无报错,此时点击三角形进行编译

在这里插入图片描述

如果发现报错显示是make错误,那么说明没有安装其他库,此时输入配置指令第二步的指令进行安装即可

在这里插入图片描述

配置正常之后显示

在这里插入图片描述


c++基础-类和对象

  1.什么是类和对象

    A.类的定义

      类是一种构造类型,与c语言结构体相似,类的成员不但可以是变量,还可以是函数.

    B.类的结构表示

在定义一个类时需要按照这样的格式进行书写
在这里插入图片描述

    C.类的访问权限

类的访问权限控制通过这三个关键字控制.
在这里插入图片描述

    D.对象的定义

      通过类定义出来的变量称为对象,创建对象的过程也成为类的实例化.

    E.类和对象的关系

      类是创建对象的模板,一个类可以创建多个对象,每个对象都是类类型的一个变量

类和对象的定义以及类和对象的关系总结
在这里插入图片描述

  2.类和对象在qt中的使用

    A.类在qt中进行定义

类定义的书写
在这里插入图片描述

    B.对象在qt中的使用

两种方法从类中实例化对象
在这里插入图片描述

从栈中实例化对象

在这里插入图片描述

从堆中实例化对象

在这里插入图片描述

删除对象

在这里插入图片描述

当成员变量被私有或者protected之后,不能直接访问私有变量,会报错

在这里插入图片描述

类的成员函数定义

在这里插入图片描述

类的成员函数调用

在这里插入图片描述


c++基础-构造函数和析构函数

  1.构造函数的定义和在类中的定义

    A.构造函数的定义

构造函数是一个名称与类名相同,没有返回值的函数,他在类的实例化时被调用
在这里插入图片描述

    B.默认构造函数在类中的定义

#include<iostream>class Dog{
public:Dog();
};

类中的定义表示
在这里插入图片描述

    c.类中无定义默认构造函数时

没有定义构造函数的内容的话,编译器会合成一个默认的构造函数.`默认构造函数不执行任何操作,不写类也是有默认构造函数
在这里插入图片描述

  2.析构函数的定义和在类中的定义

    A.析构函数的定义

析构函数是一个名称与类名相同的函数,他在对象销毁时调用析构函数.
在这里插入图片描述

    B.默认析构函数在类中的定义

析构的定义表示
在这里插入图片描述

    c.类中无定义默认析构函数时

没有定义析构函数的内容的话,编译器会合成一个默认的析构函数.默认的析构函数不执行任何操作,不写也是类也有默认析构函数`
在这里插入图片描述

  3.构造函数和析构函数的使用

    A.构造函数在qt中定义

构造函数的内部实现(可自由定义)
在这里插入图片描述

    B.析构函数在qt中定义

析构函数的内部实现(可自由定义)

在这里插入图片描述

    C.构造和析构的使用

在初始化对象和退出释放对象资源时调用

在这里插入图片描述

在堆中实例化对象之后,需要delete将对象进行删除,否则执行之后,析构函数不会执行

在这里插入图片描述

加上delete的执行效果

在这里插入图片描述


相关文章:

qt的c++环境配置和c++基础【正点原子】嵌入式Qt5 C++开发视频

QT c 环境配置和c基础 c环境配置和工程创建  1.配置步骤  2.新建qt 工程目录和工程  3.重启qt后打开最近的qt项目 c基础-类和对象  1.什么是类和对象    A.类的定义    B.类的结构表示    C.类的访问权限    D.对象的定义    E.类和对象的关系 2.类…...

中间件安全(三)

本文仅作为学习参考使用&#xff0c;本文作者对任何使用本文进行渗透攻击破坏不负任何责任。 前言: 本文主要讲解apache命令执行漏洞&#xff08;cve_2021_41773&#xff09;。 靶场链接&#xff1a;Vulfocus 漏洞威胁分析平台 一&#xff0c;漏洞简介。 cve_2021_41773漏洞…...

唱戏机上的内存卡怎么加密?教你两个方法

唱戏机是中老年人群休闲时光的好伴侣。然而&#xff0c;很多唱戏机商家都会面临一个困扰&#xff1a;如何保护唱戏机上内存卡中的音频&#xff0c;避免他人随意复制呢&#xff1f;今天这篇文章看完&#xff0c;问题将迎刃而解~ 数据隐藏 将内存卡插到电脑上&#xff0c;对卡里…...

MyBatis 源码分析 - SQL执行过程(三)之 ResultSetHandler

MyBatis的SQL执行过程 在前面一系列的文档中&#xff0c;我已经分析了 MyBatis 的基础支持层以及整个的初始化过程&#xff0c;此时 MyBatis 已经处于就绪状态了&#xff0c;等待使用者发号施令了 那么接下来我们来看看它执行SQL的整个过程&#xff0c;该过程比较复杂&#xff…...

webpack解决使用window.open方法打开history路由页面提示404的问题

问题: 一般情况下应该使用history.push(/ssh)打开history路由页面 但项目中使用window.open(/ssh),然后使用new WebSocket进行通信 开发环境下启动项目后,/ssh页面打开却显示cannot get /ssh,控制台提示404 排查问题: 在React开发环境中使用 window.open 打开路由页面时&a…...

怎么把视频的声音转化为文字免费?7个小妙招,视频转文字轻松解决!

您是否也曾在做会议记录时&#xff0c;希望能免费把视频的声音转化为文字呢&#xff1f;在如今我们的办公生活中&#xff0c;用视频记录会议、记录的生活似乎已经成为了我们一项必备技能&#xff0c;但也并非所有人都能轻松获取视频中的信息。尤其是有着听力障碍的人群&#xf…...

【无标题】2024年第五届 MathorCup 数学应用挑战赛——大数据竞赛赛题

2024年第五届 MathorCup 数学应用挑战赛——大数据竞赛赛题已发布~&#xff0c;本届初赛时间为&#xff1a;2024年10月25日18:00至2024年11月1日20:00。本次赛题分为A&#xff0c;B两道&#xff0c;所有参赛队从赛道 A、B 中任选一题作答。在报名系统内选择自己队伍的赛道时&am…...

新能源行业必会基础知识---电力现货问答---第9问---什么是输电权?什么是输电权市场?

新能源行业必会基础知识-----电力现货问答-----主目录-----持续更新https://blog.csdn.net/grd_java/article/details/142909208 虽然这本书已经出来有几年了&#xff0c;现货市场已经产生了一定变化&#xff0c;但是原理还是相通的。还是推荐大家买来这本书进行阅读观看&#…...

视频文案素材获取渠道分享

做视频时为文案发愁&#xff1f;别担心&#xff01;今天为大家推荐几个实用的视频文案素材网站&#xff0c;让你灵感爆棚&#xff0c;轻松创作文案。 蛙学网 首先要推荐的是蛙学网。作为专业短视频素材库&#xff0c;不仅有修牛蹄、解压视频等热门素材&#xff0c;还为短视频创…...

尚硅谷-react教程-求和案例-数据共享(下篇)-完成数据共享-笔记

#1024程序员节&#xff5c;征文# public/index.html <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>redux</title></head><body><div id"root"></div></body> </html&…...

VB中如何创建和使用自定义控件

在Visual Basic&#xff08;VB&#xff09;中&#xff0c;创建和使用自定义控件是一个高级功能&#xff0c;它允许开发者根据特定需求创建具有独特行为和外观的控件。以下是在VB中创建和使用自定义控件的一般步骤&#xff1a; 一、创建自定义控件 打开VB开发环境&#xff1a; …...

Java继承的super关键字

在Java中&#xff0c;super关键字用于调用父类的构造方法、访问父类的成员变量和成员方法。 调用父类的构造方法&#xff1a; 在子类的构造方法中&#xff0c;可以使用super关键字来调用父类的构造方法。这可以帮助子类初始化从父类继承的属性。调用父类的构造方法要使用以下语…...

3D点云与2D图像的相互转换:2D图像对应像素的坐标 转为3D空间的对应坐标

2d ----> 3d 对应像素到空间坐标的转换 参考&#xff1a;深度相机&#xff0c;通过2d检测得到目标坐标系的3d检测框_深度图到相机坐标-CSDN博客...

查找算法简记

一、简单查找&#xff08;顺序查找&#xff09; 最基本的查找&#xff0c;相当于遍历&#xff0c;从头到尾一个一个找。 二、二分查找 1、简述 二分查找的输入是一个有序的元素列表。 如果要查找的元素包含在列表中&#xff0c;二分查找返回其位置&#xff1b; 否则返回null。…...

算法竞赛(Python)-状态间的奇妙转移(动态规划)

文章目录 一、初探动态规划1 拼图游戏&#xff08;从搜索到动态规划&#xff09;2 物流仓库——状态的转移 二、状态的巧妙定义1 不同的状态和转移2 流浪猫的家——状态压缩与状态剪枝 三 转移方式的神奇优化1 运输计划——在转移中剪枝2 会议安排——在决策中剪枝 三、经典的动…...

String.format() 用法详解

**String.format()详解示例&#xff1a;**import java.util.Date; /** String.format() 格式化 / public class format { /* 字符串占位符类型%s 字符串类型%c 字符类型%b 布尔类型%d 整数类型&#xff08;十进制&#xff09;%x 整数类型&#xff08;十六进制&#xff09;%o …...

es 常用命令(已亲测)

说明&#xff1a; elastic:1235 账号:密码 _isShare &#xff1a; 字段 1、 根据一个参数查询es curl -XGET -u elastic:1235 http://10.223.73.3:9200/catalog/_search \ -H Content-Type: application/json \ -d {"query":{"match":{"_isShar…...

RabbitMQ 高级特性——事务

文章目录 前言事务配置事务管理器加上Transactional注解 前言 前面我们学习了 RabbitMQ 的延迟队列&#xff0c;通过延迟队列可以实现生产者生产的消息不是立即被消费者消费。那么这篇文章我们将来学习 RabbitMQ 的事务。 事务 RabbitMQ 是基于 AMQP 协议实现的&#xff0c;…...

HCIP-HarmonyOS Application Developer V1.0 笔记(二)

类Web开发范式自定义组件基本用法 自定义组件通过element引入到宿主页面。 Props自定义属性 自定义属性支持类型 String&#xff0c;Number&#xff0c;Boolean&#xff0c;Array&#xff0c;Object。 命名规范&#xff1a; 命名时禁止以on、、on:、grab:等保留关键字为开头…...

初体验鸿蒙 HarmonyOS NEXT开发

上个星期三就下载了鸿蒙 HarmonyOS NEXT&#xff0c;安装好了后测试了一下&#xff0c;感觉界面和功能设计与IntelliJ IDEA很像&#xff0c;对初学者非常友好&#xff0c;所见即所得。不知道什么原因&#xff0c;写了代码后测试起来很慢&#xff0c;简单测试后就没有再动。 今天…...

ES6从入门到精通:前言

ES6简介 ES6&#xff08;ECMAScript 2015&#xff09;是JavaScript语言的重大更新&#xff0c;引入了许多新特性&#xff0c;包括语法糖、新数据类型、模块化支持等&#xff0c;显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

C++使用 new 来创建动态数组

问题&#xff1a; 不能使用变量定义数组大小 原因&#xff1a; 这是因为数组在内存中是连续存储的&#xff0c;编译器需要在编译阶段就确定数组的大小&#xff0c;以便正确地分配内存空间。如果允许使用变量来定义数组的大小&#xff0c;那么编译器就无法在编译时确定数组的大…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

抽象类和接口(全)

一、抽象类 1.概念&#xff1a;如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象&#xff0c;这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法&#xff0c;包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中&#xff0c;⼀个类如果被 abs…...

Copilot for Xcode (iOS的 AI辅助编程)

Copilot for Xcode 简介Copilot下载与安装 体验环境要求下载最新的安装包安装登录系统权限设置 AI辅助编程生成注释代码补全简单需求代码生成辅助编程行间代码生成注释联想 代码生成 总结 简介 尝试使用了Copilot&#xff0c;它能根据上下文补全代码&#xff0c;快速生成常用…...

Docker、Wsl 打包迁移环境

电脑需要开启wsl2 可以使用wsl -v 查看当前的版本 wsl -v WSL 版本&#xff1a; 2.2.4.0 内核版本&#xff1a; 5.15.153.1-2 WSLg 版本&#xff1a; 1.0.61 MSRDC 版本&#xff1a; 1.2.5326 Direct3D 版本&#xff1a; 1.611.1-81528511 DXCore 版本&#xff1a; 10.0.2609…...

PLC入门【4】基本指令2(SET RST)

04 基本指令2 PLC编程第四课基本指令(2) 1、运用上接课所学的基本指令完成个简单的实例编程。 2、学习SET--置位指令 3、RST--复位指令 打开软件(FX-TRN-BEG-C)&#xff0c;从 文件 - 主画面&#xff0c;“B: 让我们学习基本的”- “B-3.控制优先程序”。 点击“梯形图编辑”…...