![]() |
1
6
如果这是为了教育目的,我建议您改用调试器。如果将sos.dll(是.NET框架的一部分)加载到windbg甚至Visual Studio中,则可以检查内存中的实际对象。
例如,要列出堆,请使用
通过使用调试器,您不必局限于查看演示应用程序。您可以查看真实应用程序的详细信息。此外,您还将学习一些非常有用的调试技巧。 对使用windbg+sos进行调试有几个很好的介绍。检查 Tess' blog 很多教程。 |
![]() |
2
7
你可以使用
但请记住
您需要使用
|
![]() |
3
3
RuntimeHelpers.GetHashCode 将为您提供基于身份的哈希代码。实际上,这可能是基于地址。正如所解释的:
字符串文本的内接是主要的例外。这在C++中实际上是相同的。 |
![]() |
4
0
我理解如果你提供编译器 /不安全 选项,将允许您编写“不安全”代码,并使用它可以访问指针。 我没有测试过这个,但是找到了 in this artice 编辑:
似乎要记住的主要事情是,您必须用
|
![]() |
5
0
在.NET中,根本不使用指针。因此,您将创建引用对象,其中的值始终可见。 比较引用对象时,将比较引用,而不是实际值!(除了比较字符串,其中“==”已过载)。 也许你想演示的.NET示例会详细说明… |
![]() |
6
0
您可以在.NET中检索对象的地址,例如使用不安全的代码,但是您返回的地址只是临时的--它将是从获取地址的点开始的快照。 下次垃圾收集发生时,对象的地址可能会更改:
垃圾收集器的存在是
|
![]() |
7
-2
您需要用/unsafe开关编译这个 |
![]() |
Emopusta · 从后端到前端的图像路径不工作 2 年前 |
![]() |
Asdrubal Hernandez · Linq查询特定数组索引出错 2 年前 |
![]() |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
|
Dansih · .Net核心自定义身份验证方案 2 年前 |
![]() |
lolorekkk · 面板插入。NET WinForm 2 年前 |