【问题标题】:Any way to show/compare object references in watch window?有什么方法可以在监视窗口中显示/比较对象引用?
【发布时间】:2012-04-23 15:17:32
【问题描述】:

在调试时,我有时会发现需要在监视窗口中比较对象引用,以查看两个变量是否实际上引用了同一个对象。

使用 C++ 和指针这很容易,但有没有办法使用 C# 引用来做到这一点?

【问题讨论】:

标签: c# reference visual-studio-debugging


【解决方案1】:

实际上有一个内置功能用于比较监视窗口中的对象,不需要您直接调用任何函数。它在右键菜单中为“Make Object ID”

它将用 ID 标记对象,然后您可以添加第二个对象并用 id 标记它。如果这些对象是相同的引用,那么它们将具有相同的 ID。这使您可以在调试时查看它们是否/何时发生变化。

【讨论】:

  • 太棒了。这更容易,更接近我想要的。谢谢。
  • ID 出现在 Value 列的右端。您可能需要将“值”列加宽才能看到它。
【解决方案2】:
object.ReferenceEquals(objA, objB)

【讨论】:

  • 没有意识到您可以在监视窗口中调用函数!谢谢!
猜你喜欢
  • 2011-12-10
  • 1970-01-01
  • 2020-09-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多