Rust入门04-变量与可变性

变量与可变性

  • 变量

    使用let关键字声明,默认情况下,变量是不可变的,但若在声明变量时,在变量前加上mut,就可使变量可变

    fn main() {
        println!("Hello, world!");
        let mut x = 5;
        println!("The value of x is {}", x);
        x = 6;
        println!("The value of x is {}", x);
    }
    
  • 常量

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

    1. 不可使用mut,常量永远都是不可变的

    2. 声明常量使用const关键字,它的类型必须被标注

    3. 常量可以在任何作用域内进行声明,包括全局作用域

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

    常量在程序运行过程中,在其声明的作用域内一直有效

    常量的命名使用全大写字母,每个单词之间用下划线分开

    const MAX_POINTS: u32 = 100_100;
    
  • Shadow(隐藏)

    可以使用相同的名字声明新的变量,新的变量就会shadow(隐藏)之前声明的同名变量

    在后续代码中,此变量名代表的是新的变量

    let spaces = "    ";
    let spaces = spaces.len();
    println!("The length of spaces is:{}", spaces);
    //The length of spaces is:4
    

    shaodw

posted on 2022-03-11 22:08  Baby091  阅读(43)  评论(0编辑  收藏  举报

导航