CodeBlanks Logo Icon CodeBlanks

Default parametreler

C# kursu · Başlangıç · Ders 78/116

Varsayılan değerli parametreler tanımlamayı öğrenirsin.

Default parametreler

Bir parametreye varsayılan değer verilebilir; buna default parametre denir. Tanımda parametreye = değer eklenir: static void Greet(string name = "Dost"). Çağrıda argüman verilmezse bu değer kullanılır.

Örneğin Greet() çağrısı name için "Dost" kullanır; Greet("Ayşe") çağrısı ise verilen argümanı kullanır. Default parametreler çağrıda esneklik sağlar.

Default ve sıralama

Default parametreler parametre listesinin sonunda olmalıdır. Yani default değeri olmayan bir parametre, default değerinden sonra gelemez. Aksi halde derleme hatası alırsın.

Çağrıda default'u olan parametreler atlanabilir. CheckAge(20) çağrısı static void CheckAge(int age, int limit = 18) tanımında limit için default 18 değerini kullanır.

Uygulama Yaş sınırı kontrolü

static void CheckAge(int age, int limit = 18) metodu tanımla. Gövdede Console.WriteLine(age >= limit) yaz. Main içinde CheckAge(20) çağır (limit için default değeri kullan).

Örnek çözümü göster
CheckAge gövdesine Console.WriteLine(age >= limit); ekle, Main içine CheckAge(20); yaz.
Örnek çözüm:
using System;

class Program
{
    static void CheckAge(int age, int limit = 18)
    {
        // age >= limit sonucunu yazdır
        Console.WriteLine(age >= limit);
    }

    static void Main()
    {
        // CheckAge metodunu çağır
        CheckAge(20);
    }
}

Kendini test et

  1. Greet() çağrısı ne yazdırır?

    static void Greet(string name = "Dost")
    {
        Console.WriteLine("Merhaba, " + name);
    }
    Greet();
    • Merhaba, Dost
    • Merhaba,
    • Merhaba, name
    • Boş
    Cevabı göster

    Merhaba, Dost — Doğru. Argüman verilmediği için name = "Dost" kullanılır.

  2. İfadeyi anlamına eşle

    name = "Dost"
    Varsayılan değer
    Greet()
    Default kullanır
    Greet("Ayşe")
    Argüman verir
    static void
    Değer döndürmez
  3. Default parametre

    static void Greet(string name ____)
    {
        Console.WriteLine(name);
    }
    Cevabı göster
    static void Greet(string name = "Dost")
    {
        Console.WriteLine(name);
    }

Başlangıç bölümündeki tüm dersler