Rust变量默认赋值后是不可以更改的,这样做比较安全,也更方便并行处理。当在程序中某个地方定义了一个变量并使用,又在程序中其它地方某些时候修改了这个变量的值,之前使用这个变量的地方就可能会产生问题。这种问题在运行时发生,很难追踪和测试。
设置变量的值
比如下边这样写,编译的时候就会报错。
let x = 5;
x = 6;
为了让变量可以被修改,可以通过关键字mut来实现。
let mut x = 5;
x = 6;
与常量之间的区别
常量的值是硬编码的,不可在运行时改变。
const MAX_POINTS: u32 = 100_000;
常量使用const赋值,且不能用mut修饰。
覆盖( Shadowing )
可以多次对同一个变量使用let关键字(包括mut修饰的变量):
let x = 5;
let x = x + 1;
let x = x * 2;
这种方法不需要使用mut关键字,实际上是创建了一个新变量,而且可以更改变量的数据类型:
let spaces = " ";
let spaces = 1;
注意使用let mut定义的变量,不可通过赋值更改数据类型:
let mut spaces = " ";
spaces = 1;
上边的代码编译会报错。
发表评论
相关文章
国内AI资源汇总,AI聊天、AI绘画、AI写作、AI视频、AI设计、AI编程、AI音乐等,国内顺畅访问,无需科学上网。
扫码或点击进入:萤火AI大全
文章分类
最新评论