Rust 可变变量
变量绑定默认是不可变的(immutable),但加上 mut 修饰语后变量就可以改变。
fn main() { let _immutable_binding = 1; let mut mutable_binding = 1; println!("Before mutation: {}", mutable_binding); // 正确代码 mutable_binding += 1; println!("After mutation: {}", mutable_binding); // 错误! _immutable_binding += 1; // 改正 ^ 将此行注释掉 }
编译器会给出关于变量可变性的详细诊断信息。
变量绑定有一个作用域(scope),它被限定只在一个代码块(block)中生存(live)。代码块是一个被 {} 包围的语句集合。另外也允许变量遮蔽(variableshadowing)。fn main() { / ...