?? operatörü

Vikipedi, özgür ansiklopedi
15.03, 9 Ekim 2020 tarihinde Khutuck Bot (mesaj | katkılar) tarafından oluşturulmuş 23669286 numaralı sürüm (Bot: Kaynak ve içerik düzenleme (hata bildir))

?? 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

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