今日の一言【2019.09.10】

今日の一言です。(プログラミング言語 Rust)

Vecの添え字はusizeで

NGパターン

fn main() {
    let mut numbers: Vec<i32> = Vec::new();
    numbers.push(10);
    numbers.push(20);
    numbers.push(30);

    let i: i32 = 0;
    let number = numbers[i];    // iがi32なのでコンパイルエラー
    println!("{}", number);
}

OKパターン

fn main() {
    let mut numbers: Vec<i32> = Vec::new();
    numbers.push(10);
    numbers.push(20);
    numbers.push(30);

    let i: usize = 0;
    let number = numbers[i];    // iがusizeなのでOK
    println!("{}", number);     // 10と表示される
}

参考URL

https://doc.rust-lang.org/std/vec/struct.Vec.html
スポンサーリンク
レクタングル広告(大)
レクタングル広告(大)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする