Potresti per favore spiegare, perché Console.WriteLine scrive una riga vuota ( Console.WriteLine(null)
dammi un errore di compilazione) e perché non c'è NullReferenceException (anche a+=1
se non dovrebbe sollevarla)?
int? a = null;
a++; // Why there is not NullReferenceException?
Console.WriteLine(a); // Empty line
NullReferenceException
? ma int?
non è un Reference
, è solo un int
che può prendere null
valore
++
,+=
e+
hanno sollevato varianti. Pertanto le dichiarazionia++;
,a += 1;
ea = a + 1;
sono tutte consentite. Ogni prodottonull
(nessuna eccezione generata) sea
è inizialmentenull
.