刷野打怪上王者·C++篇·第5期·数据类型

PySide6 vs PyQt6:新手如何根据Python版本选择GUI库?附版本兼容性测试 本文针对Python GUI开发新手,详细对比了PySide6与PyQt6的核心差异,并提供了基于Python 3.8至3.12等不同版本的兼容性实测数据与选择建议。文章重点分析了版本选择策略,帮助开发者根据自身Python环境、项目需求(如与matplotlib集成)及许可证考量,做出最合适的决策,并附有安装验证与避坑指南。 阅读详情

参考链接

RUNOOB.COM

数据类型说明

    我们思考一下,为什么会 出现数据类型。个人理解,首先作为一个好的程序员,就必须在实现特定功能的前提下,要保证较小的时间复杂度和空间复杂度。要做实现上面说的,当然最牛的就是算法。其实算法就是解决问题的一种方法,不过就是这个方法更高效。但要玩算法,最基本就是要合理申请数据空间。

    上面知道了为什么,下面我们开始聊实际的。在C++的数据类型包括:字符型、宽字符型、整型、浮点型、双浮点型、布尔型等。

基本数据类型

       字符型(char)、宽字符型(wchar_t)、整型(int)、浮点型(float)、双浮点型(int)、布尔型(bool)、宽字符型(wchar_t)。

       上面说的是基本的数据类型,其实一些基本类型可以使用一个或多个修饰符进行修饰。修饰符主要有:signed、unsigned、short、long。(修饰符,我们可以理解为对数据类型声明的更加具体)

       说完了数据类型,下面我们来说一下它们在计算机内存中所占的空间大小:

       但是由于电脑位数和编译器不同,因此可以使用程序自己查看数据类型在电脑上占用的空间大小。

#include<iostream>  
 
using namespace std;  
  
int main()  
{  
    cout << "type: \t\t" << "************size**************"<< endl;  
    cout << "bool: \t\t" << "所占字节数:" << sizeof(bool);  
    cout << "\t最大值:" << (numeric_limits<bool>::max)();  
    cout << "\t\t最小值:" << (numeric_limits<bool>::min)() << endl;   
    return 0;  
}

   这里用几个C++函数,其中一个sizeof(变量名)可以得到变量的字节数,(numeric_limits<类型>::max)()得到该类型最大值,(numeric_limits<类型>::min)()得到该类型最小值。

   好了,上面已经把数据类型讲完了,下面我们讲一下C++中两个常见的操作typedef类型和枚举类型

typedef类型

    typedef其实就是将变量换一个名字,下面上代码:

typedef char chCameraId; //告诉编译器chCameraId代表char类型
chCameraId cam1;         //cam1申请了char类型空间大小

typedef的使用方法

typedef 类型 新的名字; 

枚举类型

       这个其实就是C++的一个派生的数据类型,因为有些变量可能含有多个含义,例如动物,可能是猪、狗、猴子等。所以枚举类型,对数据的可读性非常有帮助。下面说一下它的格式:

enum 枚举名{ 
     标识符[=整型常数], 
     标识符[=整型常数], 
... 
    标识符[=整型常数]
} 枚举变量;

     实例代码如下:

enum animal{ pig, dog, monkey } eAnimalType; //根据枚举特点,pig代表0,dog代表1,monkey代表2

eAnimalType = pig;

     如果在进行枚举变量声明的时候,如果不特定说明枚举中数据代表的数值,则是从0开始递增。如果赋值了数值,则从最大值开始递增:

enum animal{ pig = 1, dog = 6, monkey } eAnimalType; //根据枚举特点,pig代表1,dog代表6,monkey代表7

eAnimalType = dog;

   

更多《计算机视觉与图形学》知识,可关注下方公众号:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

单细胞拟时序分析实战:用monocle2从Seurat对象构建细胞轨迹(附完整代码) 本文提供了一套完整的单细胞拟时序分析实战教程,详细讲解了如何将Seurat对象转换为Monocle2的CellDataSet,并构建细胞命运轨迹。内容涵盖数据转换、轨迹定义基因选择、降维参数调优、可视化技巧及结果生物学验证,旨在帮助研究者解决实际分析中的常见问题,从静态细胞图谱中挖掘动态发育过程。 阅读详情

相关推荐

HFSS仿真中如何提取最大E/H场强与频率关系曲线

本文详细讲解了在HFSS仿真中提取最大E/H场强与频率关系曲线的完整流程。通过使用场计算器(Field Calculator)和创建场报告,工程师可以准确获得器件在整个频带内的电场或磁场强度峰值,并进一步推导出关键的功率容量曲线,为高功率射频器件(如滤波器、耦合器)的设计提供至关重要的安全评估依据。

ss78901的博客 1099

刷野打怪上王者·C++篇·第27期·总结

刷野打怪上王者·C++篇·第26期·时间函数&预处理 刷野打怪上王者·C++篇·第25期·动态内存处理 刷野打怪上王者·C++篇·第24期·信号处理 刷野打怪上王者·C++篇·第23期·标准流输入输出 刷野打怪上王者·C++篇·第22期·多线程处理 刷野打怪上王者·C++篇·第21期·模板处理 刷野打怪上王者·C++篇·第20期·命名空间 刷野打怪上王者·C++篇·第19期·...

CSS360的博客 1617

Vivado静态时序分析学习笔记(1)

静态时序分析分为片内时序分析(寄存器与寄存器之间的时序关系)和片外时序分析(IO时序分析)。(1)建立时间 setup time在时钟事件(上升沿/下降沿)发生之前数据信号应保持稳定的时间。把实际电路抽象成前级D触发器+组合逻辑+后级D触发器。

Fantaasky的博客 4379

刷野打怪上王者·C++篇·第7期·数据存储

参考链接 RUNOOB.COM 数据存储类说明 在编程过程需要限制和扩大函数以及变量的作用域(关于作用域上一篇已经提到点),需要一些特定的类来进行修饰。为实现上面的功能,C++定义了存储类。C++程序中使用的存储类:auto,register,static,extern,mutable,thread_local。 但是随着C++版本的更新,从C++17开始,aut...

CSS360的博客 842

Decoder如何工作、Transformer如何训练、以及exposure bias问题

1、结合图文描述Decoder中各个模块是什么,以及是如何工作的。2、transformer是如何训练的。3、exposure bias问题造成的原因及解决方法

m0_59113542的博客 3346

Godot 4.x 实现 JRPG 回合制战斗系统:架构、状态机与实战优化

游戏开发中,状态机是管理复杂逻辑流转的核心设计模式,尤其在回合制战斗这类事件驱动的场景中。其原理是通过定义有限的状态和明确的转移条件,来控制系统在不同阶段的行为,从而实现清晰、可维护的流程控制。这项技术的价值在于能够将杂乱的条件判断代码结构化,降低模块间的耦合度,提升代码的可读性和可扩展性。在游戏开发领域,状态机广泛应用于角色AI、UI流程、战斗系统等场景。本文以Godot引擎为例,深入探讨如何运用节点与信号驱动架构,构建一个健壮的JRPG(日式角色扮演游戏)回合制战斗系统。内容涵盖从核心的**状态机**设

weixin_33749242的博客 500

刷野打怪上王者·C++篇·第25期·动态内存处理

参考链接 RUNOOB.COM 动态内存处理 为什么会有这么一个概念呢?我们在写程序的时候,有的时候很难提前预知定义的变量需要申请多少内存,只有在程序运行的过程才能够确定。需要说明一点,在C++中内存由两部分组成:栈和堆。其中,函数内声明的所有变量使用栈来存储;对于程序未使用的可用于动态分配的内存则有堆完成。 要进行动态申请内存,C++提供了空间分配new运算符,还提供了...

CSS360的博客 330

基于OpenCV的驾驶疲劳检测与预警系统设计

PERCLOS(Percentage of Eye Closure)是一种基于眼睑闭合程度的疲劳度量指标。在基于OpenCV的驾驶疲劳检测与预警系统设计中,PERCLOS可以用于检测驾驶员的眼睑闭合程度,以判断其是否疲劳。该函数用于检测视频流中人脸的疲劳程度。具体地,该函数通过检测人脸的眼睛和嘴巴的状态来评估人脸的疲劳程度。眼睛状态是通过计算眼睛的长宽比(eyear)来判断,如果长宽比小于某个阈值,则认为眼睛闭合,表示人处于疲劳状态。

2301_79810943的博客 2328

刷野打怪上王者·C++篇·第8期·运算操作

参考链接 RUNOOB.COM 运算操作 上几篇已经讲了C++中变量和数据存储,后面我们将讲对里面的数据进行操作需要C++提供了哪些运算符。C++中常见的运算符:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、杂项运算符。 算术运算符:包括+(加)、-(减)、*(乘)、/(除)、++(自加)、--(自减)。下面我们通过程序来进行说明: #include <ios...

CSS360的博客 319

【C++】排序算法

冒泡排序、插入排序、选择排序、希尔排序、堆排序、归并排序、快速排序、计数排序、基数排序、桶排序、外排序

phoenixFlyzzz的博客 2067

《商用密码应用与安全性评估》第四章密码应用安全性评估实施要点4.1密码应用方案设计

密码应用方案设计

qq_40442137的博客 1475

刷野打怪上王者·C++篇·第13期·类&对象

参考链接 RUNOOB.COM 类 这个其实在前面讲的时候,就已经涉及过类的使用,现在使用文字描述一下。C语言是面向过程的编程,C++是面向对象的过程。类说白了就是用户定义的类型,类中的数据和方法(可以理解为一个个函数)称为类的成员。下面说一下类的使用,类的定义是以class关键字开头,主体是花括号的内容,下面来说明一下: class 类型 { public: ...

CSS360的博客 392

【毕业设计】基于雷达与深度学习的摔倒检测——雷达数据集的建立

运动物体的微多普勒效应为人体动作识别提供了可能,基于雷达的居家检测具有良好的隐私保护性,且不易受环境因素影响(如光照、温度等),近年来已受到国内外学者的广泛关注。基于雷达与深度学习的摔倒检测使用自建的雷达数据集进行人体摔倒检测的研究。雷达数据集的建立分为雷达数据采集和雷达数据处理两部分工作。

洋洋Young的博客 3405

刷野打怪上王者·C++篇·第16期·多态处理

参考链接 RUNOOB.COM 多态处理 我们在前面已经讲过继承的定义,但是当我们遇到继承类和基类中的方法相同时,程序该如何运行呢?这时,就需要引入C++中多态操作。多态调用时,会根据函数对象类型执行不同函数: #include <iostream> using namespace std; /*几何的基本信息类*/ class cubeInfoClass { p...

CSS360的博客 300

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

刷野打怪上王者·C++篇·第21期·模板处理

参考链接 RUNOOB.COM 模板处理 函数模板不是一个实在的函数,编译器不能为其生成可执行代码。定义函数模板后只是一个对函数功能框架的描述,当它具体执行时,将根据传递的实际参数决定其功能。模板分为函数模板和类模板。 函数模板的定义方式 template <class type1, class type2, ...> 返回类型 函数名(参数列表) { /*核...

CSS360的博客 318

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

刷野打怪上王者·C++篇·第6期·变量&常量

参考链接 RUNOOB.COM 变量 其实变量就是一个名字,代指的可操作存储区的名称。也不是随便起个名字就可以,在C++中变量的名称由字母、数字和下划线组成。但必须以字母或下划线开头,并且区分字母的大小写。 估计大家对上一节讨论的字符数不是很清楚,一个字符对应8位(每位对应的就是0或者1)。我们拿一个特殊的类型来进行说明,float类型1位符号、8位指数、23位小数,下面拿...

CSS360的博客 359

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

刷野打怪上王者·C++篇·第15期·重载操作

参考链接 RUNOOB.COM 重载操作 重载操作分为重载运算和重载函数。 重载函数 在同一个作用域内,可以声明几个功能类似的同名函数,但是这些形式参数(参数个数、数据类型或者顺序)不同。不能通过返回类型来重载函数。 #include <iostream> using namespace std; class dataDisposeClass { pu...

CSS360的博客 376

刷野打怪上王者·C++篇·第19期·异常处理

参考链接 RUNOOB.COM 异常处理 当我们在写项目代码的时候,并不是一写即成的状态,而是要反复多次测试才能使程序出错率降到最低。因此,在程序测试过程中,需要将可能出现的异常进行监视,并在出错的时候返回异常信号、内存释放等。 在C++的异常处理中主要有三个关键字:try、catch、throw。try:可能出现要出现异常的代码块;catch:捕获异常信号;throw:异...

CSS360的博客 305

刷野打怪上王者·C++篇·第9期·判断&循环

参考链接 RUNOOB.COM 判断 在判断语句中主要有两种:if...else和switch两个语句。下面我们还是主要通过代码来说明: 先看一看看if...else语句: #include <iostream> using namespace std; int main() { float iVar1 = 1, iVar2 = 2; if(iVar1 > ...

CSS360的博客 298

刷野打怪上王者·C++篇·第22期·多线程处理

参考链接 RUNOOB.COM 多线程处理 在电脑中可以进行多任务处理,其中多任务的处理方式分为两种:多进程和多线程。多进程是程序的并发执行;多线程是同一程序判断并发执行。 实例程序 #include <iostream> #include <utility> #include <thread> #include <chrono>...

CSS360的博客 364

刷野打怪上王者·C++篇·第14期·继承操作

参考链接 RUNOOB.COM 继承操作 继承操作可以通过一个已有类来定义新的类。说白了就是当我们在定义一个新类的时候,不需要重新编写新的类成员和方法,可以继承已有的类成员即可。其中,已有的类为基类,新创建的类成为派生类。 派生类可以从多个基类进行继承,下面看一下派生类的定义方法: class 派生类名: 访问权限(public/private/protect) 基类; 下面...

CSS360的博客 282

刷野打怪上王者·C++篇·第11期·指针&引用

参考链接 RUNOOB.COM 指针 要想成为一名优秀的程序,学会指针是必不可少的技能。合理利用指针在写项目时,很大程度能够提高你程序的执行效率。上来就把指针吹的很牛,我们现在来看怎么使用吧。我们前面讲了,变量名其实对应内存中一块地址,并且每个内存位置都定义了&来访问内存地址。 那么什么是指针呢?其实指针也是一个变量,不过这边变量存储的是内存地址。使用方式: 数据类...

CSS360的博客 284

刷野打怪上王者·C++篇·第18期·抽象类处理

参考链接 RUNOOB.COM 抽象类处理 如果类中至少一个函数声明为纯虚函数(关于纯虚函数已经在上面介绍过),则这个类就是抽象类。其中,抽象类目的主要是为了给其他类提供一个可以继承适当的基。并且,抽象类不能用来实例对象,只能作为接口使用,否则编译会出错。 #include <iostream> using namespace std; /*几何的基本信息类*...

CSS360的博客 268

刷野打怪上王者·C++篇·第10期·数组、结构体

参考链接 RUNOOB.COM 数组 数组是存储一个固定大小的相同元素的顺序集合,它们在内存中中对应的地址是连续的。下面我们来看一下数组声明: 数据类型 数组变量名[数组大小] //这是简单的一维数组 下面我们通过程序来看一下: #include <iostream> using namespace std; int main() { int iA...

CSS360的博客 266

刷野打怪上王者·C++篇·第12期·函数&基本数学函数

参考链接 RUNOOB.COM 函数 在程序执行过程中,必须含有主函数main,因为这是程序的入口。但是我们在写工程的工程中,只有一个主函数是不可以的,因为这样代码的可读性就很差。面对这个问题,C++可以在程序中申请多个函数。下面来看一下函数的定义方式: 数据类型 函数名(形式参数) { /*核心函数*/ } 其实函数我们已经在前面程序使用过,下面我们在来看一下: #...

CSS360的博客 257

c++ 小游戏 游戏中心1.玩贪吃蛇2.玩狒狒大站3.晃瞎你的狗眼4.玩速算王者5.玩欢乐赌场6.玩忍三7.玩打怪小游

if(j==3) cout

weixin_62886692的博客 540
上一篇: 刷野打怪上王者·C++篇·第4期·注释
下一篇: 刷野打怪上王者·C++篇·第6期·变量&常量
元宇宙MetaAI
博客等级 码龄10年 331粉丝 333原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值