为什么is关键字需要非空表达式?

时间:2009-06-12 21:08:30

标签: c# language-design keyword

is关键字的MSDN文档说明:

expression is not null

为什么呢?如果 MethodThatReturnsNull()是类型被调用不应该返回false,因为null肯定不是那种类型?

4 个答案:

答案 0 :(得分:5)

如果falseexpression,则会返回null。也许你误解了文档?

答案 1 :(得分:0)

对于null,你唯一可以肯定的是,你不知道它是什么。将某些内容与null进行比较通常会产生null ...

问:1 ==“我不知道”? 答:“我不知道”

查看Eric Lippert的this blog post

答案 2 :(得分:0)

您无法静态解析null。

答案 3 :(得分:0)

这是我对类似问题的一个非常受欢迎的答案。

C# get type of null object

  

这就像问什么样的蛋糕   本来应该在一个空盒子里   没有标签。