类型定义Nullable<T>
为. struct
在 .Net 中,您不能分配null
给 astruct
因为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>
没有提供关于这是如何发生的任何见解。