すごくメモ帳

すごくほぼメモ帳ぐらいなブログ

Rust の変数 - 可変と不変

前回

nihonium.hatenablog.com

変数はデフォルトで不変

fn main(){
    let x = 1;
    x += 1;
    println!("x = {}", x);
}

変数を変えようとするとエラーが発生する。

変数を可変にする

fn main(){
    let mut x = 1;
    x += 1;
    println!("x = {}", x);
}

mut を付ける。

シャドーイング

fn main(){
    let x = 1;
    let x = x + 1;
    println!("x = {}", x);
}

前のxを覆い隠して、新しい変数xを定義している。(変数の変更とは違う)

新しい変数を定義しているため、型が異なっても同じ変数名を使用できる。

fn main(){
    let str = "Hello, world";
    let str = str.len();
    println!("len = {}", str);
}

次回

未定