In C # kann ein bedingter Operator nicht implizit auf einen Nullable-Typ umgewandelt werden

Ich bin neugierig, warum Sie einen impliziten cast schlägt fehl...

int? someValue = SomeCondition ? ResultOfSomeCalc() : null;

und warum muss ich führen Sie eine explizite Umwandlung statt

int? someValue = SomeCondition ? ResultofSomeCalc() : (int?)null;

Scheint es mir, hat der compiler alle Informationen die Sie benötigen, um eine implizite Typumwandlung Entscheidung, nicht?

InformationsquelleAutor der Frage Tim Jarvis | 2008-10-20

Schreibe einen Kommentar