加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 为什么这是一个有效的比较

发布时间:2020-12-15 08:46:44 所属栏目:百科 来源:网络整理
导读:参见英文答案 C# okay with comparing value types to null10个 这是一些示例代码: static DateTime time;if (time == null){/* do something */} 由于DateTime不能为null,为什么这段代码会编译? 编辑: 问题不仅仅是这段代码总是返回false,而是为什么在这
参见英文答案 > C# okay with comparing value types to null10个
这是一些示例代码:
static DateTime time;
if (time == null)
{
/* do something */
}

由于DateTime不能为null,为什么这段代码会编译?

编辑:
问题不仅仅是这段代码总是返回false,而是为什么在这样的比较中允许类似DateTime的东西,它永远不会为null.

解决方法

虽然时间是不可为空的值类型,但它可以转换为可空,并与null进行比较.比较会产生错误,这是一个有效的结果.

但是,这并不意味着它是一个很好的代码.诸如re:sharper之类的工具会标记此行,并显示“Expression is always false”的警告.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读