【发布时间】:2010-11-07 03:06:42
【问题描述】:
我可以通过什么方式输出内存中对象的引用。 喜欢:
Console.WriteLine("内存位置的对象" + object.Reference);
提前谢谢,我需要这个来做一些调试。
【问题讨论】:
-
引用不是内存位置。查看此博客:Fabulous Adventures In Coding
标签: c#
我可以通过什么方式输出内存中对象的引用。 喜欢:
Console.WriteLine("内存位置的对象" + object.Reference);
提前谢谢,我需要这个来做一些调试。
【问题讨论】:
标签: c#
您可能会经常看到 .NET 教程提到“指针”,并且有人在 cmets 中生气说应该讨论“引用”而不是“指针”。这就是为什么。这种区别通常是微不足道的,尤其是在教授更高层次的概念时,但在这种情况下,它是非常重要的。
实际的指针由 .NET 处理,.NET 经常更改对象在内存中的位置,从而更改/更新指针。你和我处理引用,当指针发生时我们的引用不需要更改,因为 .NET 为我们处理这个映射。因此,尽管总是涉及到指针,即使我们确实得到了指针所指向的内容,但这并不一定意味着您正在找出它将继续在哪里。
也就是说,你仍然可以使用下面的,但我认为它不会达到你想要的效果:
int* myIntPointer = &myInt;
【讨论】:
对于托管对象,您不能这样做是有充分理由的。它可以在任何垃圾回收期间更改位置。
【讨论】: