欢迎光临散文网 会员登陆 & 注册

变量

2021-05-11 22:38 作者:707才不会沉迷B站  | 我要投稿

Rust很奇怪变量默认是不可变的,是不是很矛盾,因为这是为了安全。用let关键字来定义变量

因为变量不可变,所以给x再赋值6时会报错。要想声明可变的变量,需要使用关键字mut

这样确实会安全很多,在创建变量时就会思考未来会不会变,如果变化就加上mut。如果默认是可变的变量,则本来不想修改的变量,在未来可能会一不小心改掉,那么就很危险了。

虽然变量默认是不可变的,但Rust也有常量类型,常量声明使用const,且必须指明类型

变量和常量有些区别:

  1. 常量不能使用mut关键字,并没有可变的常量

  2. 常量可以声明在任何地方,且始终都有效

  3. 常量的声明必须用常量表达式,不能用函数,在编译期就要确定他的值

变量还有一个特性就是可以覆盖

新的x变量会覆盖掉旧的x,看起来像是修改了变量值,其实是用let关键字又声明了一个同名的变量,而且变量的类型是可以修改的

这种特性即使使用mut也无法做到。

变量的评论 (共 条)

分享到微博请遵守国家法律