Rust - 变量
1.1、变量与可变性
- 声明变量使用let关键字
- 默认情况下,变量是不可变的
- 声明变量时,在变量前面加上mut,就可以使变量可变
1.2、变量与常量
- 常量:常量在绑定值以后也是不可变的,但是它与不可变的变量有区别
- 不可以使用mut,常量永远不可变
- 声明常量使用const关键字,它的类型必须被标注
- 常量可以在任何作用域内进行声明,包括全局作用域
- 常量只可以绑定到常量表达式,无法绑定到函数的调用结果或只能在运行时才能计算出的值
- 在程序运行期间,常量在其声明的作用域内一直有效
- 命名规范:Rust里常量使用全大写字母,每个单词之间用下划线分开
1.3、shadowing(隐藏)
- 可以使用相同的命令声明新的变量,新的变量就会shadow之前声明的同名变量
- shadow和把变量标记为mut是不一样的
- 如果不适用let关键字,那么在重新给非mut的变量赋值会导致编译时错误
- 而使用let声明的同名新变量,也是不可变的
- 使用let声明的同名新变量,它的类型可以与之前不同