Menu
Coddy logo textTech

Gölgeleme Bölüm 2

Coddy'nin Rust Journey'sinin Fundamentals bölümünün bir parçası — ders 48 / 75.

Rust'ta bir değişkeni gölgelediğinizde (shadowing), yeni değişken orijinalinden tamamen bağımsızdır ve kendi mutability (değişebilirlik) bildirimine ihtiyaç duyar. Gölgeleme, orijinal değişkenin mutability özelliğini devralmaz.

let mut mut_val = 7;
// Orijinal değişken değiştirilebilirdir (mutable)
{ 
    let mut_val = 8;
    // Bu, dıştaki mut_val'ı gölgeleyen (shadowing) yeni bir değişkendir
      
    mut_val = 50;
    // Bir hata oluştu çünkü
    // mut_val değiştirilebilir (mutable) değildir
}
// Burada sorun yok 
// mut_val bu kapsamda (scope) dondurulmuş değildir
mut_val = 3;

Bunu düzeltmek için iç kapsama mut ekleyebiliriz:

{
	let mut mut_val = 8;
	mut_val = 50;
}
challenge icon

Görev

Başlangıç

Verilen kodu, hata vermeden çalışacak şekilde düzeltin.

Kopya kağıdı

Rust'ta bir değişkeni gölgelediğinizde (shadowing), yeni değişken tamamen bağımsızdır ve kendi değiştirilebilirlik (mutability) bildirimine ihtiyaç duyar. Gölgeleme, orijinal değişkenden değiştirilebilirliği miras almaz.

let mut mut_val = 7;
// Orijinal değişken değiştirilebilirdir
{ 
    let mut_val = 8;
    // Bu, dıştaki mut_val'ı gölgeler ancak sabittir (immutable)
      
    mut_val = 50;
    // Hata: mut_val bu kapsamda değiştirilebilir değildir
}

Bunu düzeltmek için, gölgeleyen değişkene mut ekleyin:

{
    let mut mut_val = 8;
    mut_val = 50; // Artık bu çalışır
}

Kendin dene

fn main() {
    // Bu kodu çalışması için düzeltin
    let number = 42;
    {
        let number = number;
        println!("number is {}", number);
        number = 100;  // Bu bir hataya neden olacak
        println!("number is {}", number);
    }
    println!("number is {}", number);
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Fundamentals bölümündeki tüm dersler