?? İşleç (C# Reference)
?? işleç null coalescing işleç olarak adlandırılır ve başvuru türleri veya bir varsayılan değer null değer tipleri tanımlamak için kullanılır. Sol verir işlenen null; değilse işlenen Aksi halde sağ işlenen verir.
Notlar
boş değer atanabilir tip bir değer içerebilir veya tanımlanmamış olabilir.?? varsayılan değer boş değer atanabilir tip olmayan bir atandığında, döndürülecek işleç tanımlar-boş değer atanabilir tip. atamak yapılamayan bir değer türü değer türü null kullanmadan denerseniz ?? işleç, bir derlemekoluşturur-zamanı hata. Bir cast kullanırsanız ve null değer türü şu anda tanımlanmamış bir InvalidOperationException özel durum durum.
Daha fazla bilgi için bkz. NULL olabilecek türleri (C# Programlama Kılavuzu).
Sonucu bir??işleç bile bağımsız değişkenleri sabitler sabit olarak nitelendirilmez.
Örnek
class NullCoalesce
{
static int? GetNullableInt()
{
return null;
}
static string GetStringValue()
{
return null;
}
static void Main()
{
// ?? operator example.
int? x = null;
// y = x, unless x is null, in which case y = -1.
int y = x ?? -1;
// Assign i to return value of method, unless
// return value is null, in which case assign
// default value of int to i.
int i = GetNullableInt() ?? default(int);
string s = GetStringValue();
// ?? also works with reference types.
// Display contents of s, unless s is null,
// in which case display "Unspecified".
Console.WriteLine(s ?? "Unspecified");
}
}
Ayrıca bkz.
Başvuru
NULL olabilecek türleri (C# Programlama Kılavuzu)