rust类型和变量(二)
基础知识
Rust中的变量基础知识
1.在Rust中,使用Iet关键字来声明变量
2.Rust支持类型推导,但你也可以显式指定变量的类型:
Ietx:i32=5;/显式指定x的类型为i32
3.变量名蛇形命名法(Snake Case),i
而枚举和结构体命名使用帕斯卡命名法(Pasca|Case)
如果变量没有用到可以前置下划线,消除警告
4.强制类型转换Casting a Value to a Different Type
let a 3.1;let b a as i32;
5.打印变量({}与{:?}需要实现特质之后章节会介绍,基础类型默认实现)
1.printIn!("val:{}"x);
2.printIn!("val:{x}");
创建变量:let 关键字
//变量默认是不可变的
// 可变变量:变量名称前加 mut
//常量:const 关键字
// Shadowing: 隐藏
const A_CONST: i32 = 42; // 声明常量fn main() {println!("Hello, world!");let mut x = 5; // 可变变量println!("the value of x is {}",x);x = 6;println!("{}",x);println!("const is {}",A_CONST);let xx = getNumber();
}fn getNumber() -> i32{42
}
2.基础数据类型
基础数据类型
·Integer types默认推断为i32
·i8、i16、i32、i64、i128
Unsigned Integer Types
·u8、u16、u32、u64、u128
·Platform-Specific Integer Type(由平台决定)
·usize
·isize
·Float Typesf32与f64
·尽量用f64,
除非你清楚边界需要空有很多种啊·Boolean Values
·true
·false
·Character Types
·Rust支持Unicode字符
表示char类型使用单引号
类型
基本数据类型
整数类型:如 i8, i16, i32, i64, i128, u8, u16, u32, u64, u128
浮点类型:f32, f64
字符类型:char
布尔类型:bool
复合数据类型
元组:所有元素都实现 Debug 的元组自动实现 Debug。
数组:数组 [T; N] 在 T 实现 Debug 的情况下自动实现 Debug。
标准库类型
字符串类型:String 和字符串切片 &str
集合类型:Vec<T>, HashMap<K, V>, HashSet<T>, BTreeMap<K, V>, BTreeSet<T> 等,其中 T, K, V 需实现 Debug。
智能指针:如 Box<T>, Rc<T>, Arc<T>, Cell<T>, RefCell<T>,其中 T 需实现 Debug。
Option:Option<T> 在 T 实现 Debug 的情况下自动实现 Debug。
Result:Result<T, E> 在 T 和 E 都实现 Debug 的情况下自动实现 Debug。
其他
指针:裸指针 *const T 和 *mut T 也实现了 Debug。
相关文章:
rust类型和变量(二)
基础知识 Rust中的变量基础知识 1.在Rust中,使用Iet关键字来声明变量 2.Rust支持类型推导,但你也可以显式指定变量的类型: Ietx:i325;/显式指定x的类型为i32 3.变量名蛇形命名法(Snake Case),i 而枚举和结构体命名使用帕斯卡命名法(Pasca|Ca…...
linux学习:多媒体开发库SDL+视频、音频、事件子系统+处理yuv视频源
目录 编译和移植 视频子系统 视频子系统产生图像的步骤 api 初始化 SDL 的相关子系统 使用指定的宽、高和色深来创建一个视窗 surface 使用 fmt 指定的格式创建一个像素点编辑 将 dst 上的矩形 dstrect 填充为单色 color编辑 将 src 快速叠加到 dst 上编辑 更新…...
基于门控的循环神经网络:LSTM
之前我们介绍了循环神经网络的原理以及实现。但是循环神经网络有一个问题,也就是长期依赖问题。我们之前的01序列预测案例中可以看到,当序列长度到达10以上之后错误就会增多,说明简单的RNN记忆容量较小,当长度更大时就不怎么适用了…...
Web常见的攻击方式及其防御策略
随着互联网技术的快速发展,Web应用已成为我们日常生活和工作中不可或缺的一部分。然而,Web应用也面临着各种安全威胁和攻击。了解这些常见的攻击方式,并采取有效的防御策略,对于保护Web应用的安全至关重要。 一、常见的Web攻击方…...
关于SQL
数据库简介: 数据库分类 关系型数据库模型: 优点:易于维护,可以实现复杂的查询 缺点:海量数据 读取写入性能差,高并发下数据库的io是瓶颈 是把复杂的数据结构归结为简单的二元关系(即二维表…...
大模型时代下两种few shot高效文本分类方法
介绍近年(2022、2024)大语言模型盛行下的两篇文本分类相关的论文,适用场景为few shot。两种方法分别是setfit和fastfit,都提供了python的包使用方便。 论文1:Efficient Few-Shot Learning Without Prompts 题目:无需提示的高效少…...
Linux0.11 中全局描述符表(GDT)
在Linux内核中,全局描述符表(Global Descriptor Table,简称GDT)是一个关键的数据结构,主要用于管理处理器的内存段和相关的权限与属性。它属于x86架构中的保护模式特性,允许操作系统对内存访问进行更精细的…...
搜维尔科技:数据手套用于外固定虚拟现实模拟 、外固定增强现实模拟
数据手套用于外固定虚拟现实模拟、外固定增强现实模拟 搜维尔科技:数据手套用于外固定虚拟现实模拟、外固定增强现实模拟...
《三》菜单栏_工具栏_状态栏动作与实现
上期我们创建了辣么多的动作,那么这次我们要是开始实现这些动作,撸起袖子来吧: //菜单动作(ACtion)QAction *newAct;//新建QAction *openAct;//打开QAction *saveAct;//保存QAction *saveAsAct;//另存为QAction *prin…...
基于NTP服务器获取网络时间的实现
文章目录 1 NTP1.1 简介1.2 包结构1.3 UNIX 时间戳和NTP时间戳 2 代码实现2.1 实现步骤2.2 完整代码 3 结果 在某些场景下,单片机需要通过网络获取准确的时间进行数据同步,例如日志记录、定时任务等。然而,单片机本身无法直接获得准确的标准时…...
Web APIs(获取元素+操作元素+节点操作)
目录 1.API 和 Web API 2.DOM导读 DOM树 3.获取元素 getElementById获取元素 getElementsByTagName获取元素 H5新增方法获取 获取特殊元素 4.事件基础 执行事件 操作元素 修改表单属性 修改样式属性 使用className修改样式属性 获取属性的值 设置属性的值 移除…...
Android adb shell关于CPU核的命令
Android adb shell关于CPU核的命令 先使用命令: adb shell 进入控制台。 然后,直接在$后面输入下面命令,针对CPU的命令。 cat /proc/cpuinfo | grep ^processor | wc -l 查看当前手机的CPU是几核的。 cat sys/devices/system/cpu/online …...
基于springboot+mybatis+vue的项目实战之页面参数传递
如图所示,删除操作可以用按钮实现,也可以用超链接来实现。 1、第一种情况,用按钮实现。 html页面相关: <button type"button" click"deleteId(peot.id)">删除</button> <script>new Vue(…...
CSS-浮动
float (浮动) 作用:盒子的顶点是一样的,具备行内块的特征,能设置宽高 属性:float 属性值:left 浮动在网页左边 right 浮动在网页右边 .a{width: 100px;height: 100px;float:left;background-color: red;}.b…...
MFC:字符串处理
例子 //多字节char* szTest "abc多字节";int nLen strlen(szTest);//9//宽字节wchar_t* szTest2 L"abc多字节";int nlen2 wcslen(szTest2);//6//测试项目配置为Unicodewchar_t* szTesz3 TEXT("abcd");//char* -> CStringCString strTes…...
虚拟仿真云平台在教育应用中的优势和意义
虚拟仿真云实验教学平台作为一种新型的教学方法,近年来在高校教育中得到了十分广泛的应用。它通过模拟真实的实验场景和实验操作,让学生在计算机上进行实验操作和数据处理,为学生提供了更加便捷、可靠、有效的实验学习环境。本文,…...
CPU的的处理流程如何快速记忆
为了快速记忆CPU的处理流程,可以将其简化成五个主要阶段,通常称为“冯诺依曼架构”的五个基本步骤,或者是流水线处理的几个阶段。下面是一种便于记忆的简化版本: CPU处理流程的五个阶段: 取指令(Instructi…...
AI视频教程下载:基于OpenAl、LangChain、 Replicate开发AI应用程序
欢迎来到令人兴奋的 AI 应用世界!在这门课程中,你将学习到创建一个能够与用户互动、理解自然语言、处理音频输入,甚至分析图像的真正智能应用所需的技能和技术。 AI 工具和技术 你将获得使用几个知名 AI API 和技术的实际经验。这些行业领先…...
【C++】继承相关(基类与派生类的继承关系以及细节整理)
目录 00.引言 01.继承的定义 02.基类和派生类对象 03.继承中的作用域 04.派生类的默认成员函数 05.友元、静态成员 00.引言 继承是面向对象编程中的一个重要概念,它的作用是创建一个新的类,该类可以从一个已存在的类(父类/基类&#x…...
【Web后端】监听器Listener
1、简介 用来监听Servlet组件对象状态发生变化的组件可以监听的源包括:ServetRequest、HttpSession、ServletContext当监听到事件源状态发生变化时,会有对应的响应行为 2、使用方法 在web.xml文件中配置 <listener> <listener-class>com.coder.util.…...
深入LTPI状态机:为什么你的链路配置总失败?Advertise与Configure状态详解
深入LTPI状态机:为什么你的链路配置总失败?Advertise与Configure状态详解 在LTPI协议的实际部署中,许多工程师都会遇到一个令人困惑的现象:明明按照规范完成了链路训练,却在配置阶段频繁出现回退到Link Detect状态的情…...
图片去水印怎么做?2026年最全图片去水印工具推荐与方法盘点
在日常工作和生活中,我们常常会遇到带有水印的图片——无论是社交平台的截图、素材库的图片,还是从各类网站下载的资源。水印虽然保护了原作者的权益,但有时也会影响我们对内容本身的使用。那么,图片去水印有哪些实用方法…...
从概率拟合到内生心智:七层投影架构重构AGI数字生命新范式
自2017年Transformer架构问世以来,人工智能领域正式迈入大模型迭代时代。十余年间,千亿、万亿参数模型不断涌现,依托自注意力机制的概率拟合算法,AI在文本生成、多模态交互、逻辑问答等领域实现了规模化突破,彻底改变了…...
从开发者视角感受Taotoken官方价折扣带来的实际成本节省
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 从开发者视角感受Taotoken官方价折扣带来的实际成本节省 对于独立开发者和小型团队而言,在构建和迭代AI应用时…...
从零开发游戏需要学习的c#模块,第二十一章(精灵动画 —— 让角色走起来)
今天我们要学习的内容是 理解精灵图集的原理 加载精灵图集并切帧 实现四方向行走动画 静止时显示待机帧 第一步:准备精灵图集 精灵图集就是一张大图里包含多个小图(帧),播放时依次显示每一帧,形成动画效果。 一…...
哈佛教授刚警告“别让AI改写论文”,但我反手就用GPT这套技巧发了篇核心
各位同仁好,我是七哥。一个在高校里从事人工智能相关领域研究,钻研用大模型AI实操的学术人。可以和七哥交流学术写作或Gemini、GPT、Claude等大模型学术实操相关问题,多多交流,相互成就,共同进步。 多数学术同仁在撰写核心期刊论文时,常常会陷入两个极端:要么面对空白文…...
AI 超声波电动护手霜加热器智能功率 MOSFET 完整选型方案
2026年随着 AI 技术在个人护理领域的深度渗透(如智能温控、超声波促渗、肤质自适应),电动护手霜加热器对功率 MOSFET 提出更高要求:低压大电流、超小封装、逻辑电平驱动、高可靠性。微碧半导体(VBsemi)基于…...
商业空间吸音地毯怎么选?16 年品牌雅尔居靠谱
商业空间装修,噪音控制是刚需。办公室人声嘈杂、酒店走廊脚步声扰客、工装大堂回音重,都会直接影响空间体验与使用效率。选对吸音地毯,既能高效降噪,又能提升空间质感,是商业空间地面材料的优选。今天就来聊聊吸音地毯…...
从开题到定稿,okbiye AI 写作如何解决毕业论文 90% 的核心痛点
okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT毕业论文 - Okbiye智能写作https://www.okbiye.com/ai/bylw 作为一名踩过论文无数坑的过来人,我深知毕业季被毕业论文支配的恐惧:对着 Word 空白页无从下笔,开题报告…...
K8s集群健康监控、Pod调度与配置存储卷
33.Kubernets对集群Pod和健康容器状态如何进行监控和检测的。 K8s通过kubelet节点监控,使用三种探针来监控和管理容器监控状态,每种探针在容器生命周期种的不同阶段发挥不同的作用。 34.解释LivenessProbes探针的作用及其适用场景。 LivenessProbes存活探…...
