十进制之间的区别?和系统为空<decimal>



可能的重复项:
C# Nullable vs. int?:有什么区别吗?

当使用 NMG(Nhibernate 映射生成器)转换可为空的类型时,我将它们作为System.Nullable<decimal>而通过使用Visual Nhibernate跟踪包,我得到了十进制的可空类型?

我知道什么是十进制?确实,在非技术术语中出现空值的情况下,它被接受而不会抛出错误。

但是我无法找出十进制之间是否有任何区别? 和System.Nullable<decimal>与否?

来自 MSDN - 可为空的类型(C# 编程指南)

语法 T? 是 System.Nullable<T> 的简写,其中 T 是值类型。这两种形式是可以互换的。

没有区别。 decimal?在编译时转换为Nullable<decimal>。它可以说句法糖

十进制?是执行System.Nullable的简短方法,这已经在 ?C# 中的(可为空)运算符

希望对您有所帮助。

两者之间没有区别。 类型? 只是一个快捷方式表示法。

最新更新