Questo funziona come previsto:Perché questo typecast causa un errore?
byte b = 7;
var i = (int)b;
Mentre questo getta un InvalidCastException
:
byte b = 7;
object o = b;
var i = (int)o;
Perché il cast non riescono da un object
quando il tipo di fondo è ancora byte
?
Questa domanda esplora questo: http://stackoverflow.com/questions/5588073/generics-casting-and-value-types-why-is-this-llegal - in particolare la risposta di Eric Lippert è una buona lettura. –
@MattGreer Che risponde esattamente alla mia domanda. – jelbourn