How is the boxing/unboxing behavior of Nullable<T> possible?
问题 Something just occurred to me earlier today that has got me scratching my head. Any variable of type Nullable<T> can be assigned to null . For instance: int? i = null; At first I couldn't see how this would be possible without somehow defining an implicit conversion from object to Nullable<T> : public static implicit operator Nullable<T>(object box); But the above operator clearly does not exist, as if it did then the following would also have to be legal, at least at compile-time (which it