Rust_learn_1

news/2024/11/21 0:17:24/文章来源:https://www.cnblogs.com/solutide/p/18345701

变量与可变性

变量

声明变量使用let关键字,在默认情况下,变量是不可变的(Immutable)

image-20240806172626179

为此解决该问题,声明变量时在前面加上 mut,就可以使变量可变

image-20240806172643913

常量

常量(constant),在绑定值之后也是不可变的,但是与不可变的变量有很多区别:

  • 不可以使用mut,常量永远是不变的

  • 声明常量用const关键字,类型必须被标注

    image-20240806172808852

    image-20240806172830448

  • 常量可以在任何作用域中声明,包括全局作用域

  • 常量只可以绑定到常量表达式,无法绑定到函数的调用结果或只能在运行时才能计算出的值

在程序运行期间。常量在其声明的作用域内一直有效

shadowing(隐藏)

可以使用相同的名字声明新的变量,新的变量就会隐藏之前声明的同名变量,在后续代码中这个变量名表示的是新的变量

shadow 和把变量标记为mut是不同的:

  • 如果不使用let关键字,重新给非mut的变量赋值会导致编译时错误(就是上面所说的变量是不可变的)
  • 而使用let声明的同名新变量,也是不可变的
  • 使用let声明的同名新变量,它的类型可以与之前不同
let  _kk=1;
println!("{}",_kk);
let _kk = 2;
println!("{}",_kk);let _xx = "123";
print_type_of(&_xx);  //&str
let _xx = _xx.len();
print_type_of(&_xx); //usize

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/778841.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【python海龟画图】代码整理

春联点击查看代码 import turtle t = turtle t.showturtle() t.penup() t.goto(-150,150) t.pendown()t.color(black, red) t.begin_fill() for i in range(2):t.forward(50)t.right(90)t.forward(400)t.right(90) t.end_fill()t.penup() t.goto(100, 150) t.pendown()t.begin…

【验证码逆向专栏】某安登录流程详解与验证码逆向分析与识别

声明 本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术…

Excel 根据单元格值设置行颜色

开始》条件格式》管理规则》新建格式规则》使用公式确定要设置格式的单元格 只为满足以下条件的单元格设置格式:=SEARCH("进行中",$E5)>0 ;(注释:此处筛选的是包含进行中的数据) 格式:选择满足条件的单元格设置什么格式 对某个单元格设置后【此示例使用的是…

怎么将回滚操作

点击禁用双击 install

RAG技术要点及英智未来的应用实践

RAG是检索增强生成(Retrieval-augmented Generation),概念是在2020年发表的论文《面向知识密集型NLP任务的检索增强生成》中提出的。 LLM的工作原理是基于预训练的历史数据进行推理生成文本,所以LLM在生成回答的时候可能会引入了过期的、不可预测的或者错误的信息,导致大语…

2024暑假集训测试18

前言比赛链接。这次有大量外校人员参加,\(90\) 来个人,T1 胡了个结论上去结果大小样例都过了,造 hack 还没 hack 了,索性交了,但是有捆绑感觉会爆零,没想到结论是对的,直接 A 了;打完 T1 就罚坐了,三个小时就弄出来 \(5\) 分,当时都绝望了,想到了很多东西。因为感觉…

智能加速计算卡设计原理图:628-基于VU3P的双路100G光纤加速计算卡 XCVU3P板卡

基于VU3P的双路100G光纤加速计算卡 一、板卡概述 基于Xilinx UltraScale+16 nm VU3P芯片方案基础上研发的一款双口100 G FPGA光纤以太网PCI-Express v3.0 x16智能加速计算卡,该智能卡拥有高吞吐量、低延时的网络处理能力以及辅助CPU进行网络功能卸载的能力,达到最大…

《数据资产管理核心技术与应用》读书笔记-第二章:元数据的采集与存储

《数据资产管理核心技术与应用》是清华大学出版社出版的一本图书,全书共分10章,第1章主要让读者认识数据资产,了解数据资产相关的基础概念,以及数据资产的发展情况。第2~8章主要介绍大数据时代数据资产管理所涉及的核心技术,内容包括元数据的采集与存储、数据血缘、数据质…

SchurVINS

SchurVINS: Schur Complement-Based Lightweight Visual Inertial Navigation System SchurVINS:基于Schur补的轻量级视觉惯性导航系统 Yunfei Fan, Tianyu Zhao, Guidong Wang 范云飞,赵天宇,王朝栋 ByteDance 字节跳动 {frank.01, zhaotianyu.1998, guidong.wang}@byteda…

帝国cms里栏目列表模板获取同级栏目的方法

帝国cms里栏目列表模板获取同级栏目的方法 [showclasstemp]$class_r[$GLOBALS[navclassid]][bclassid],3,0,0[/showclasstemp] 必须要先获取到当前栏目的父栏目ID 页面模板内容支持的变量下有 [!--bclass.id--] 但是这个不能在标签里使用 所以采用php代码来获取 $GLOBALS[navcl…