在我看来,这就是装箱和拆箱。而已。有人可以确认这是正确的吗?
最佳答案
没有。
虽然总体思路是正确的,但并不完全正确。盒装值是符合 System.Object
内存布局的完整对象。这意味着一个 v-table 指针(它为 System.Object
虚拟方法(例如 Equals
和 GetHashCode
以及用作类型标签以防止拆箱为不兼容的类型)和(可选)同步监视器。
存储在装箱值句柄中的实际地址并不指向内容,而是指向附加的元数据。
关于c# - 装箱值只是指向存储在托管堆中的值副本的指针吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16722433/