Parametre Olarak Diziler
Coddy'nin Rust Journey'sinin Fundamentals bölümünün bir parçası — ders 56 / 75.
Rust'ta, dizileri parametre olarak şu şekilde kabul edebilirsiniz:
Sabit boyutlu diziler:
fn process_array(arr: [i32; 5]) {}Bu, [i32; 5] içindeki 5 nedeniyle yalnızca 5 uzunluğundaki dizileri geçirmenize olanak tanır.
& işaretini kullanarak dizi referansı:
fn process_array(arr: &[i32]) {}Bir referans, verinin kendisi yerine veriye işaret eden bir işaretçi gibidir. & kullanmak bir referans oluşturur. Bu, herhangi bir boyuttaki dizinin aktarılmasına olanak tanır.
Yalnızca belirli bir boyuttaki dizilerle çalışmanız gerektiğinde sabit boyutlu diziler ([i32; 5]) kullanın.
Daha fazla esneklik istediğinizde dizi referanslarını (&[i32]) kullanın - her boyuttaki diziyi kabul edebilir ve bellek açısından daha verimlidir.
Örneğin, referans dizisi kabul eden bir fonksiyonun nasıl çağrılacağı aşağıda gösterilmiştir:
let numbers = [1, 2, 3, 4, 5];
process_array(&numbers);Kopya kağıdı
Diziler, fonksiyon parametresi olarak iki şekilde aktarılabilir:
Sabit boyutlu diziler:
fn process_array(arr: [i32; 5]) {}Yalnızca tam olarak 5 elemanlı dizileri kabul eder.
Dizi referansları:
fn process_array(arr: &[i32]) {}Her boyuttaki diziyi kabul eder. Daha esnek ve bellek açısından verimlidir.
Dizi referansı ile çağırma:
let numbers = [1, 2, 3, 4, 5];
process_array(&numbers);Kendin dene
Bu ders bir kod alıştırması içermiyor.
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
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüAritmetik KısayollarKarşılaştırma OperatörleriString Karşılaştırma7Temel Girdi-Çıktı
Konsola YazdırmaKullanıcı Girdisi OkumaÖzet - 120'ye KadarÖzet - Doğru veya Yanlış5Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 311Fonksiyonlar
Fonksiyon TanımlamaParametreler ve ArgümanlarDönüş DeğerleriBirden Fazla Dönüş DeğeriÖzet - Sigma FonksiyonuÖzet - Doğrulama Fonksiyonu14Diziler Üzerinde Gezinme
Range RehberiGelişmiş For DöngüsüDöngü İçinde Ödünç AlmaYaygın Dizi İşlemleri3Değişkenler Bölüm 2
Tür Bildirimiİsimlendirme KurallarıTür ÇıkarımıÖzet - Değişkenleri BaşlatmaTür Dönüştürme9Döngüler
Seriler Üzerinde ForWhile DöngüsüBreakContinueİç İçe DöngülerDöngü EtiketleriSonsuz DöngüÖzet - Dinamik Girdi12Dizi Temelleri
Dizi TanımlamaParametre Olarak DizilerElemanlara ErişimDizileri DeğiştirmeÖzet - Diziyi Okunaklı Yazdırma