Dizinin her öğesini sabit olmayan bir ifadeye başlatmalıyım. Dizinin her bir elemanını ilk önce anlamsız bir ifadeye başlatmadan yapabilir miyim?Dizileri iki kez başlatmaya gerek yok mu?
fn foo(xs: &[i32; 1000]) {
let mut ys: [i32; 1000];
for (x, y) in xs.iter().zip(ys.iter_mut()) {
*y = *x/3;
}
// ...
}
Bu kod derleme zamanı hatası verir:
error[E0381]: use of possibly uninitialized variable: `ys`
--> src/main.rs:5:37
|
5 | for (x, y) in xs.iter().zip(ys.iter_mut()) {
| ^^ use of possibly uninitialized `ys`
ben ilk satırını değiştirmek gerekir sorunu çözmek için İşte yapabilmek ne istiyorsunuz bir örnek fonksiyon öylesine gibi bazı model değerlerle ys
unsurlarını başlatmak için: bu ekstra başlatma atlamak için herhangi bir yolu
let mut ys: [i32; 1000] = [0; 1000];
var mı? unsafe
bloğunda her şeyi sarmak, herhangi bir fark yaratmıyor gibi görünüyor.