初面网初面网

变量与常量

在rust中有三种量值:不可变变量、可变变量、常量。

不可变变量尽管不可变,但实际上允许对它重新赋值

let a = 18;
let a = "ok";   // 允许这样,但是会弹出警告

可变变量就是一般意义上的变量,可以随时改变赋值(但类型需要保持一致,否则报错)

let mut a = 18;
a = 10;

如果想使用同名变量,且改变类型,那么必须每次都使用let

let x = 10;
let x = "10";
print!("{}", x);

// 上述步骤会弹出警告,因为改变变量的类型违背rust的设计初衷,但是编译仍旧是通过的
// 像这种重新给同名变量赋值的方法,叫做重影。

常量用const声明,声明时必须初始化且标注类型。

常量无法用let重新绑定。

const A: i32 = 10;
// A = 20; // 报错,常量无法重新赋值

常量无法绑定到函数的调用结果,或,只能在运行时才能计算出的值。

常量命名必须全部大写,词之间用下划线分开(变量也是用下划线分开)。

更新于 2026/3/3