Menu
Coddy logo textTech

Birden Fazla Dönüş Değeri

Coddy'nin Rust Journey'sinin Temeller bölümünün bir parçası. Ders 52 / 75.

Rust'ta, bir fonksiyon dönüş türü olarak bir demet (tuple) kullanarak birden fazla değer döndürebilir. Bir demet (tuple), tek bir birim halinde paketlenmiş farklı değerler grubudur.

Örneğin:

fn get_coordinates() -> (i32, i32) {
    let x = 10;
    let y = 20;
    (x, y) // Bir demet döndür
}

Fonksiyonu şu şekilde çağırabilirsiniz:

let (x, y) = get_coordinates();
// Demeti ayrı değişkenlere
// ayrıştırın

println!("{}, {}", x, y);

Demet (tuple) yapısına daha fazla öğe ekleyerek ihtiyacınız olan sayıda değer döndürebilirsiniz. Örneğin:

fn get_details() -> (String, i32, f64) {
    let name = String::from("Alice");
    let age = 30;
    let score = 95.5;
    (name, age, score)
    // Üç değer içeren bir demet döndür
}

Ve fonksiyon şu şekilde çağrılır:

let (name, age, score) = get_details();
println!("{}, {}, {}", name, age, score);
challenge icon

Görev

Kolay

get_user_info adlı, bir kullanıcının adını, yaşını ve e-posta adresini içeren bir demet döndüren bir işlev oluşturun. İşlev aşağıdaki imzaya sahip olmalıdır:

fn get_user_info() -> (String, i32, String)

İşlevin içinde aşağıdaki değişkenleri oluşturun:

  • name: "Bob" ile başlatılmış bir String
  • age: 25 ile başlatılmış bir i32
  • email: "bob@example.com" ile başlatılmış bir String

Bu üç değeri bir demet olarak döndürün.

main işlevinde get_user_info işlevini çağırın ve döndürülen demeti name, age ve email adlı ayrı değişkenlere ayrıştırın. Ardından, bu değerleri println! kullanarak aşağıdaki biçimde konsola yazdırın:

Name: [name], Age: [age], Email: [email]

Kendin dene

fn get_user_info() -> (String, i32, String) {
    // Burada isim, yaş ve e-posta değişkenlerini oluşturun
    
    
    // Demeti (tuple) döndürün
    
}

fn main() {
    // get_user_info fonksiyonunu çağırın ve döndürülen demeti ayrıştırın
    
    
    // Değerleri yazdırın
    
}
quiz iconKendini test et

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

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

Kendi başına pratik yap: Online Rust derleyicisi