このコードは機能しますが、インデックス範囲max
のタイプを明示的に宣言したいと思います。ただし、uX
またはiX
(X = 8,16または32)はコンパイルエラーを示します。正しいタイプは何ですか?あなたはusize
とインデックスのスライスをしなければならないアレイインデックスに使用する正しいタイプは何ですか?
= note: slice indices are of type `usize`
:
fn main() {
let mut arr2: [[f64; 3]; 3] = [[0.0; 3]; 3];
let pi: f64 = 3.1415926535;
let max = 3; // let max: i16 e.g. is wrong
for ii in 0..max {
for jj in 0..3 {
let i = ii as f64;
let j = jj as f64;
arr2[ii][jj] = ((i + j) * pi * 41.0).sqrt().sin();
println!("arr2[{}][{}] is {}", ii, jj, arr2[ii][jj]);
}
}
}
私はあなたに何を求めているのか混乱しています。特定の整数型の配列にインデックスを付けることができないのはなぜですか?あるいは、あなたが「usize」要件が存在するかどうか尋ねていますか? –
私はusustを気づいていません、私の最初の試みはRustです。私はコードをコンパイルして実行できるようにmaxにappyする正しいタイプを知りたい。 –