对象引用未设置的区别并在0x0000000处引用内存

本文关键字:0x0000000 引用 内存 设置 区别 对象引用 | 更新日期: 2023-09-27 18:01:19

我被告知在这个错误中…

The instruction at 0x01234567 referenced memory at 0x00000000. The memory could not be read.

0x00000000为NULL。

那么上面的错误和…有什么区别呢

Object reference not set to an instance of an object

?

对象引用未设置的区别并在0x0000000处引用内存

首先,The instruction at 0x01234567 referenced memory at 0x00000000. The memory could not be read.被操作系统(Windows)异常捕获。您的应用程序试图从设置为0的指针读取字节,这是受保护的(非托管调用,内部函数)。

第二,Object reference not set to an instance of an object是由。net自己捕获的。

用简单的话说,

"位于0x01234567的指令引用位于0x00000000的内存。

当内存被定位到一个对象时,发生" The memory could not be read.",但是当它不应该是空的时候,它是空的。