Aracılığıyla paylaş


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

C# işleçleri

NULL olabilecek türleri (C# Programlama Kılavuzu)

Kavramlar

C# Programlama Kılavuzu

Diğer Kaynaklar

C# Başvurusu

Ne tam olarak 'Hareketidir' anlamına mı?