Nullbare Typen

Null-Grundlagen

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 sein

Um 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);     // true

Die Struct Nullable<T>

T? wird in System.Nullable<T> umgewandelt. Nullable<T> ist ein leichtgewichtiges, unveränderliches Struct, das nur zwei Felder für Value und HasValue ...

Get C# 3.0: kurz & gut 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.