May 2008
Intermediate to advanced
248 pages
3h 50m
German
Referenz-Typen können einen nicht existierenden Wert durch eine Null-Referenz darstellen. Bei Werte-Typen ist das allerdings normalerweise nicht möglich:
string s = null; // okay, Referenz-Typ
int i = null; // Kompilierungsfehler, Werte-Typ
// kann nicht null seinUm Null (nicht 0) in einem Werte-Typ zu repräsentieren, müssen Sie ein spezielles Konstrukt namens nullbarer Typ nutzen. Ein nullbarer Typ wird durch einen Werte-Typ gefolgt von einem Fragezeichen ? kenntlich gemacht:
int? i = null; // okay, nullbarer Typ
Console.WriteLine (i == null); // trueT? wird in System.Nullable<T> umgewandelt. Nullable<T> ist ein leichtgewichtiges, unveränderliches Struct, das nur zwei Felder für Value und HasValue ...