我们知道,一个值类型的变量永远不可能为null.它总是包含值类型本身.遗憾的是,这在某些情况下会成为问题.例如,设计一个数据库时,可将一个列定义成为一个32位的整数,并映射到FCL的Int32数据类型.但是,数据库中的一个列可能允许值为空:用Microsoft .NET Framework处理数据库可能变得相当困难,因为在CLR中,没有办法将一个Int32值表示为null. 还有一个例子:在java中,java.util.Date类是一个引用类型,所以该类型的一个变量能设为null.但在CLR中…