【发布时间】:2013-09-07 05:55:58
【问题描述】:
Nullable<T> 类型定义为struct。在 .Net 中,您不能将null 分配给struct,因为structs 是不能用null 表示的值类型(Nullable<T> 除外)。
int i = null; // won't compile - we all know this
int? i = null; // will compile, and I'm glad it does, and it should compile, but why?
Nullable<T> 如何成为“您不能将 null 分配给值类型”规则的例外? Nullable<T> 的反编译代码没有提供关于这是如何发生的任何见解。
【问题讨论】: