Opsiyonel(Optional) Parametreler
Parametrelere varsayılan değerler verebilmek için Opsiyonel Parametreleri kullanırız. Varsayılan değeri olan bir parametreye, metot çağrımı esnasında herhangi bir değer verilmediğinde varsayılan değeri metot içerisinde kullanılır.
private static double CemberinCevresi(double yaricap,double pi=3) { return 2*yaricap*pi; } static void Main(string[] args) { // Yarıçap 4 olarak verildi. // pi için herhangi bir değer verilmediği için varsayılan değerini(3) alacaktır. CemberinCevresi(4); // Yarıçap 4 olarak verildi. // pi 3.14 değerini alacaktır. CemberinCevresi(4, 3.14); }
Opsiyonel parametreler normal parametrelerden sonra yazılmalıdır. Yani Opsiyonel bir parametreden sonra opsiyonel olmayan normal bir parametre yazılamaz.
private static double SilindirHacim(int yaricap, int yukseklik, double pi = 3) //Doğru private static double SilindirHacim(int yaricap, double pi = 3, int yukseklik) //Yanlış private static double SilindirHacim(double pi = 3, int yaricap, int yukseklik) //Yanlış private static double SilindirHacim(int yaricap, double pi = 3, int yukseklik = 4) //Doğru
İsimlendirilmiş(Named) Parametreler
Metot çağrımı yaparken parametre sırasından bağımsız olarak hangi parametreye hangi değeri atayacağımızı açık bir şekilde belirtebiliriz. İsimlendirilmiş parametrelerin kullanımı çok sayıda parametre alan metotların okunabilirliğini arttırmaktadır.
private static double SilindirHacim(int yaricap, int yukseklik, double pi = 3) { return pi*yaricap*yaricap*yukseklik; } static void Main(string[] args) { // Hangi parametreye hangi değeri atayacağımızı açık bir şekilde belirttik. Console.WriteLine(SilindirHacim(yaricap: 4, pi: 3.14, yukseklik: 56)); Console.WriteLine(SilindirHacim(yukseklik: 10, yaricap: 5, pi: 3.14)); Console.WriteLine(SilindirHacim(yukseklik: 3, yaricap: 5)); }
Serdar YILMAZ