Typy z dopuszczalną wartością pustą
Typy referencyjne mogą reprezentować nieistniejące wartości za pośrednictwem referencji pustych (null
). Ale w przypadku typów wartościowych reprezentacja wartości pustych nie jest oczywista. Oto przykład:
string s = null; // W porządku, typ referencyjny
int i = null; // Błąd kompilacji: int
// nie może mieć pustej wartości
Aby reprezentować wartości puste w zmiennych typów wartościowych, należy skorzystać ze specjalnej konstrukcji, tak zwanego typu z dopuszczalną wartością pustą (ang. nullable type). Typ dopuszczający wartość pustą jest zapisywany jako typ wartościowy z symbolem ?
:
int? i = null; // W porządku, typ nullable
Console.WriteLine (i == null); // True
Struktura Nullable<T>
T?
tłumaczy się ...
Get C# 10 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.