c# - 什么加倍?在 C# 中是什么意思?

标签 c#

<分区>

Possible Duplicate:
C# newbie: what’s the difference between “bool” and “bool?” ?

你好, 在阅读 NUnit 项目的断言类的代码时,我遇到了这个特殊的构造 -

public static void AreEqual(double expected, double? actual, double delta)
{
     AssertDoublesAreEqual(expected, (double)actual, delta ,null, null);
}

在此函数中,第二个输入参数输入为 double?。 有趣的是这段代码在 VS2010 (C# 4.0) 中编译没有问题。 任何人都知道为什么这不会引发错误?为什么 double? 被认为是有效关键字,? 有什么特殊意义。

最佳答案

double?只是 Nullable<double> 的简写;基本上,一个 double那可以是null .但是代码不是很安全。如果actualnull , (double)actual将抛出异常。

关于c# - 什么加倍?在 C# 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2988530/

相关文章:

c# - 如何将对象包装在动态对象中?

c# - RegEx.Replace 失败,替换字符串为 $0.00

c# - 从 C# 访问 C++ DLL 库

c# - XNA:需要帮助在计时器滴答声中在任何一侧产生敌人,然后让它们随机移动

c# - 从时间 C# 中删除秒部分

c# - 如何提供一个接口(interface)来获取和更新key,value?

c# - Lambda:高效地查找、修改然后对元素进行分组

c# - 如何统一生成JSON字符串?

c# - 如何更改 CreateUserWizard 控件的布局?

c# - ajax slider 和 Javascript