当前位置: 首页>后端>正文

1.Rust新手教程-变量与常量

学习笔记,仅此而已

一、变量与可变性

  • 声明变量使用let关键字
  • 默认情况下,变量是不可变的
  • 如果希望变量可变,需要添加mut关键字

1.1 默认不可变

let name = "zhangsan";
name = "lisi"; 

上述代码编译会报错

cannot assign twice to immutable variable `name`

1.2支持可变,需要再声明变量的时候加上meut关键字

let mut name = "zhangsan";
name = "lisi"; 

1.3可变的前提是其值跟初始化定义的类型保持相同,不相同则报错

let mut name = "zhangsan";
name = 111;  // 

上述代码编译的时候会报错,标识类型不匹配。

 expected `&str`, found integer

二、常量

常量定义之后,其值是不可变的,但是其不可变与变量的不可变有区别:

  • 常量不能使用mut关键字,因为常量永远不可变
  • 声明常量必须使用const关键字,且必须标注类型
  • 命名规范:常量必须用全大写字母和下划线
const MAX_POINTS: u32 = 100_000

三、shadow(个人理解成变量的重载)

  • 1、rust支持对已经声明的变量进行重写/shadow,只需要重新定义相同变量即可

    let count = 3
    let count = count + 1
    println!("count value is {}", count);
    

    针对 mut声明的变量,也可以重写

    let mut count = 3;
    let count = count + 1;
    println!("count value is {}", count);
    
  • 2、 shadow支持将变量类型重新定义,而使用mut则不行

     let count = 3;
     let count = "count";
     println!("count value is {}", count);
    

四、最后

变量名定义:多个单词,推荐使用下划线。


https://www.xamrdz.com/backend/3f91926046.html

相关文章: