Aracılığıyla paylaş


System.Nullable<T> yapısı

Bu makale, bu API'nin başvuru belgelerine ek açıklamalar sağlar.

sınıfı, Nullable atanabilen nullbir değer türünü temsil eder.

Bir değer atanabiliyorsa veya atanabiliyorsa türün null atanabilir nullolduğu söylenir. Bu, türün hiçbir değeri olmadığı anlamına gelir. Varsayılan olarak, gibi Stringtüm başvuru türleri null atanabilir, ancak gibi Int32tüm değer türleri değildir.

C# ve Visual Basic'te, değer türünden ? sonraki gösterimi kullanarak bir değer türünü null atanabilir olarak işaretlersiniz. Örneğin, int? C# veya Integer? Visual Basic'te atanabilecek nullbir tamsayı değer türü bildirir.

Başvuru Nullable<T> türleri tasarım gereği null atanabilir olduğundan yapı, null atanabilir tür olarak yalnızca bir değer türü kullanmayı destekler.

sınıfı, Nullable yapı için Nullable<T> tamamlayıcı destek sağlar. sınıfı Nullable , temel alınan değer türü genel karşılaştırma ve eşitlik işlemlerini desteklemeyen null atanabilir tür çiftleri üzerinde null atanabilir türün temel türünü ve karşılaştırma ve eşitlik işlemlerini almayı destekler.

Temel özellikler

Yapının iki temel üyesi Nullable<T> ve Value özellikleridirHasValue. Bir nesnenin HasValue özelliği isetrue, nesnenin değerine özelliğiyle Value Nullable<T> erişilebilir. HasValue özelliği isefalse, nesnenin değeri tanımlanmamıştır ve özelliğine erişme Value girişimi bir InvalidOperationExceptionoluşturur.

Kutulama ve kutu açma

Boş değer atanabilir bir tür kutulandığında, ortak dil çalışma zamanı nesnenin kendisini değilNullable<T>, nesnenin Nullable<T> temel değerini otomatik olarak kutular. Yani, özelliği ise HasValue trueözelliğin Value içeriği kutulanır. Null atanabilir bir türün temel alınan değeri kutulanmamışsa, ortak dil çalışma zamanı temel alınan değere başlatılan yeni Nullable<T> bir yapı oluşturur.

HasValue Null atanabilir bir türün özelliği isefalse, kutulama işleminin sonucu olurnull. Sonuç olarak, bir nesne bağımsız değişkeni bekleyen bir yönteme kutulanmış null atanabilir bir tür geçirilirse, bu yöntem bağımsız değişkenin nullolduğu durumu işlemeye hazır olmalıdır. Boş değer atanabilir bir türe gelen kutular kaldırıldığındanull, ortak dil çalışma zamanı yeni Nullable<T> bir yapı oluşturur ve özelliğini olarak falsebaşlatırHasValue.

Windows çalışma zamanı bileşenleri

WinMD Nullable<T> kitaplığında dışarı aktarılan bir yapının üyesi olarak bir tür ekleyebilirsiniz.