やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Rustの変数と可変性(let, mut) error[E0384]: cannot assign twice to immutable variable `x`

 なんとRustの変数はデフォルトでimmutable。つまり固定。変わらないなら変数じゃないじゃん!

成果物

$ cd src/main.rs
$ rustc main.rs
$ ./main

問題

fn main() {
    let x = 0;
    x = 1;
}

 実行すると以下エラー。

error[E0384]: cannot assign twice to immutable variable `x`

解決

fn main() {
    let mut x = 0;
    x = 1;
}

 mutを付与する。これはmutableの略と思われる。つまりこれがないデフォルト状態での宣言はimmutable。変更不可。

所感

 今までのプログラミング言語と違う……。冗長に思えてしまう。

対象環境

$ uname -a
Linux raspberrypi 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l GNU/Linux

前回まで