Rust-变数

变数宣告

// 宣告区域变数
let local_var = 123;

不可变变数

let immutable_var = 123;

print!("{}", immutable_var);

immutable_var = 456;

print!("{}", immutable_var);

上面这段程序码在编译时会出现"cannot assign twice to immutable variable"错误,表示不可变变数无法重新赋予值

有点类似golang中的const(常数)但又不太一样,rust本身也有const关键字

可变变数

let mut mutable_var = 123;

print!("{}", mutable_var);

mutable_var = 456;

print!("{}", mutable_var);

透过在宣告变时增加mut(mutable)来让这个变数可以重新赋予值

未变化的可变变数

let mut mutable_var = 123;

print!("{}", mutable_var);

如果宣告了可变变数,但是後面又没重新赋予值时编译会出现"help: remove this mut"警告来建议移除mut

未初始化的变数

let immutable_var :i32;

print!("{}", immutable_var);

编译时会出现"use of possibly-uninitialized immutable_var"错误

初始化变数也可以在宣告变数之後,只要在变数使用之前初始化就可以,例如下面例子

let immutable_var :i32;

immutable_var = 123;

print!("{}", immutable_var);

型别和可变化的改变

rust允许在变数宣告後又重新宣告相同名称的变数,下面这些行为在rust是合法

let mut var = 123;

print!("{}", var);

var = 456;

print!("{}", var);

// 重新宣告为不可变变数
let var = 789;

print!("{}", var);

// 重新宣告为字串类型
let var = "hello word";

print!("{}", var);

未使用的变数

let immutable_var = 123;

未使用变数时会出现"help: if this is intentional, prefix it with an underscore: _immutable_var"警告,如果不想出现警告可以在变数前面加个下底线"_"

let _immutable_var = 123;

或是单纯只是要一个站位符也可以这样

let _ = 123;

<<:  Day12 - 套用 Tag Helper - 复杂型别 object + object collection

>>:  Day12 javascript 数据类型

Day 11:架设 Grafana (0)

做好了指标的收集,接下来还有一个很重要的步骤 --- 数据的视觉化,关於这方面的功能虽然 Prome...

[鼠年全马铁人挑战] Week26 - jQuery 事件处理

event 事件 JavaScript 是个事件驱动 ( Event-driven ) 的语⾔ 浏览...

[Day 26] 永和美食纪录-呈信传统鹅肉店 文化店

前言 转眼间,国庆连假已经要结束了,不晓得大家有没有好好的放松自己的身心,有些店家也因为连假的缘故而...

DAY30 - 完赛心得与下一步

第一次参加铁人赛,原本以为超前部署,开赛前两个星期就开始准备文章存档 本以为一定妥当的啦,没想到後面...

OpenStack Neutron 介绍 2

本系列文章同步发布於笔者网站 上一篇介绍了 Neutron 的架构,接下来两篇将会接续介绍 Neut...