msHOWTO

15 Nisan 2012 Pazar

C# Default Parameter

Merhaba arkadaşlar.Bu makalemde sizlerle ufak bir detay paylaşacağım.Fakat gayet kullanışlı bir yöntemdir kendileri.Evet konumuz herhangi bir method a parametre eklerken nasıl default olarak değer ataması yapacağımız konusudur.Peki neden böyle bir kullanıma ihtiyaç duyarız.Diyelim ki bir method yazdınız.Method da da 3 tane parametre eklediniz.Fakat duruma göre 3.parametreye değer atanmaması fakat default olarak atanmasını istediğiniz durumlar olabilir.İşte böyle durumlarda kullanacağımız bir yöntemdir.

Hemen basit bir method oluşturalım.


static void Carp(int a, int b)
        {
            Console.WriteLine(a * b;
        }

Yukarıdaki gibi a ve b parametrelerinden oluşan Carp methodumuzu oluşturduk.Bu durumda bu methodu çağırdığımızda a ve b parametresine mutlaka değer göndermemiz gerekmektedir.Fakat 3 tane sayıyı çarpmak istiyorsak bu methodu değiştirmemiz gerekmektedir.

static void Carp(int a, int b, int c)
        {
            Console.WriteLine(a * b * c);
        }
  
Şeklimde methodumuzu yeniden düzenlememiz gerekmektedir.Fakat bu sefer de sadece 3 tane sayıyı çarpan bir methodumuz oluştu.2 sayıyı ve 3 sayıyı çarpmak istiyorsak 2 farklı method oluşturmamız gerekmektedir.Peki daha kolay ve kısa yolu yok mudur? Tabi ki vardır.Makalemizin konusu olan default parameter yöntemi ile bu sorunu çözebiliriz arkadaşlar.

static void Carp(int a, int b, int c = 1/*eğer method çağırılırken c degerı gırılmez ise defaul olarak 1 atar.girilirse girilen değer atanır.*/)
        {
            Console.WriteLine(a * b * c);
        }

Şeklinde bir method tanımlarsak eğer 2 sayı çarpmak istiyorsak Carp(3,5); eğer 3 sayıyı çarpmak istiyorsak Carp(3,6,9); şeklinde kullanabiliriz.Eğer iki sayı çarpmak istediğimizde c parametresine değer göndermediğimiz için default olarak belirttiğimiz 1 değerini alacaktır.


Umarım anlaşılmıştır arkadaşlar.Diğer makalelerimde görüşmek dileğiyle ...



Hiç yorum yok:

Yorum Gönder