?? operatörü

Vikipedi, özgür ansiklopedi

?? operatörü ya da birleşme operatörü herhangi bir değere sahip olmayan değişkenlere öntanımlı bir değer atamak için kullanılan ikili işleçtir.

Koşullu atama[değiştir | kaynağı değiştir]

Muhtemel boş değişkene bakılır, true veya false kontrolü yapılır. İkili matematik kontrolüne dayanarak, muhtemel boş değişken boş ise öntanımlı değer, değilse muhtemel boş değişken gönderilir. Fonksiyonel programlamada kullanılan ?: operatörüne benzer.

Bu operatörün en sık kullanım sebebi boş kontrolü yapılan satırlardaki kod miktarını azaltmaktır. Örnek olarak, C#'ta bir sayfanın "Title" değeri boş ise başka bir değer atayarak değiştirmek için şu kod kullanılır:

// en kısa yol
string SayfaBaşlığı = öncedenAtanmışBaşlık ?? "Öntanımlı Başlık";

// daha uzun bir yol
string SayfaBaşlığı = öncedenAtanmışBaşlık == null ? "Öntanımlı Başlık" : öncedenAtanmışBaşlık;

// bir if-else parçacığı kullanan yol
string SayfaBaşlığı;
 
if (öncedenAtanmışBaşlık == null)
    SayfaBaşlığı = "Öntanımlı Başlık";
else
    SayfaBaşlığı = öncedenAtanmışBaşlık;

Dış bağlantılar[değiştir | kaynağı değiştir]