为什么'对象引用未设置为对象的实例'不是更具描述性?

joe*_*age 5 .net nullreferenceexception

作为开发人员,我们经常会遇到异常:NullReferenceException使用众所周知的错误消息:

你调用的对象是空的

.NET框架不可能返回更有意义的东西吗?

像这样的东西:

名为Y的X类型的对象未设置为对象的实例

Jon*_*eet 15

一个对象没有名称 - 那么它如何告诉你名字?空引用可能已从变量加载 - 或者它可能已由方法,属性等返回.

JIT可能查看堆栈信息以确定声明的引用类型是什么,但我不确定这会有多长时间有所帮助 - 毫无疑问它会减慢速度.

我不能说我曾经发现这对于调试来说是一个巨大的负担 - 如果有很多东西在一行上可以是空的,那通常表明值得将它们拆分得更多.

  • 任何类型的调试都会减慢速度.不过,我想知道它是否会减慢那么多*相比之下它会加快速度而不必返回并将所有对象分解成单独的行,或者对即时窗口发现疯狂哪个对象为空? (2认同)