唯一标识调试器中的引用类型

2023-12-12

我有 C++ 背景,如果这是非 C# 的思维方式,我很抱歉,但我只需要知道。 :)

在 C++ 中,如果我有两个指针,并且我想知道它们是否指向同一对象,我可以查看内存/监视窗口并查看它们的值 - 看看它们是否指向相同的内存空间。

在 C# 中,我还没有找到类似的东西。具有完全相同值的一种引用类型实际上可能是完全相同的对象,也可能是截然不同的东西。

有没有办法让我在 C# 中看到此类信息?也许某种相当于观察窗口的 & 运算符或类似的东西?


您正在寻找的是对象 ID。对于调试器中的任何引用类型,您可以右键单击并说“创建对象 ID”。每当调试器中显示该实例时,都会向值列添加 # 后缀。您还可以将 #1、#2 等添加到监视窗口,以便稍后再次查看它们。

第 0 步 - 运行此代码

static void Main(string[] args)
{
    var x = "a string";
    var y = x;
    System.Diagnostics.Debugger.Break();
}

第 1 步 - 右键单击​​并选择“创建对象 ID”

alt text

第 2 步 - 实例现在显示为带有 1# 后缀。注意:我在这一步中没有做任何特别的事情。单击“创建对象 ID”后立即both行已更新以显示 1# 后缀,因为它们引用同一实例。

alt text

第 3 步 - 通过在监视窗口添加 1# 随时查看它们

alt text

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

唯一标识调试器中的引用类型 的相关文章

随机推荐

  • 尽管启用了 Keep-Alive 和会话标识符/票证,仍进行多次 SSL/TLS 握手

    当网站上的 Keep Alive 和会话标识符 票证都处于活动状态时 我很难找出为什么在同一页面上经历多次 SSL TLS 握手 对于同一页面上的多个资源 即多个 HTTP 请求 服务器 我最近在我的网站上激活了 TLS https 因此我
  • CSS3PIE 不适用于边框半径[重复]

    这个问题在这里已经有答案了 我正在尝试让 CSS3PIE 适用于我的网站 以便我可以在 IE8 及更早版本 中使用 border radius 它在所有其他浏览器中运行良好 这是我的 CSS body text design border
  • MySQL 中 SELECT 结果的校验和

    试图获取 SELECT 语句结果的校验和 尝试了这个 SELECT sum crc32 column one FROM database table 哪个有效 但这不起作用 SELECT CONCAT sum crc32 column on
  • 在 Scanner.nextInt() 之后使用 Scanner.nextLine() [重复]

    这个问题在这里已经有答案了 import java util Scanner public class Hello public static void main String args Scanner in new Scanner Sys
  • android - 如何拥有可点击和可检查的文本视图

    我想要以下内容 一个文本视图 单击时更改其背景 保持该背景直到再次单击 这一切都归结为 可检查 状态 但我无法弄清楚这到底是如何工作的 这是我用于背景的 xml
  • 使用 FtpLib 获取文件夹大小

    我正在使用 FtpLib Python 从 ftp 服务器下载包含文件的文件夹 但我想在开始下载之前知道文件夹的大小 在我找到的文档中FTP size filename 但这仅适用于文件而不适用于文件夹 我可以循环遍历文件夹中的所有文件 但
  • Android在Canvas上获取Bitmap Rect(左、上、右、下)

    我在画布上绘制位图 然后在其上进行一些缩放 非常简单 只需使用 canvas scale int int hub hub 然后 缩放完成后 我需要获取位图的坐标相对于视口 有没有什么方便的方法可以做到这一点 而无需自己计算初始位置是什么 然
  • 通过链接将一张纸上的列转置为另一张纸上的行

    我在工作表 A 中的 A1 A10 中有一列数据 在工作表 B 中 我有 A1 J1 中的数据范围 我需要将工作表 A 中的列中的数据转置到工作表 B 中的数据范围 我可以 选择性粘贴 并粘贴值 但我需要工作表 A 中的信息自动更新工作表
  • JAXB 提供商列表

    AFAIK JAXB 只是一个规范 JSR222 Java 1 6 有一个它的实现 但它也被称为 JAXB 这让我感到困惑 因为 JPA 也是一种 JSR 规范 但 JPA 提供者有 EclipseLink Hibernate 等名称 那么
  • Hibernate Search:为自定义 FieldBridge 配置 Facet

    在这个例子中DateSplitBridge java动态字段被添加到索引文档中 public class DateSplitBridge implements FieldBridge public void set String name
  • 检查哪个摄像头是前置摄像头还是后置摄像头 Android

    我知道我可以设置一个boolean flag while opening front Camera 如果 flag 为 true 则表示前置摄像头已打开 但是有没有办法使用 Android API 知道哪个相机现在处于打开状态 正面或背面
  • SQLAlchemy 循环一对一关系

    我正在尝试与 SQLAlchemy 建立循环的一对一关系 不确定正确的术语是什么 如下所示 class Parent Base tablename parents id db Column Integer primary key True
  • 当绑定发生在另一个函数中时,Sqlite _only_ 找不到行

    所以我自己写了一个小包装函数来为我准备一个声明 sqlite3 stmt Gladiateur run query unfinalized string query vector
  • WPF,使用 XAML 中的 XPath 和 XmlDataProvider 根据 ComboBox 中选定的值选择节点

    这个问题与我的上一个问题但更具体 假设我有两个组合框 一个填充了产品名称 另一个为空 选择产品后 我希望第二个组合框填充与该产品相关的数据 我有如下 XML
  • Microsoft Office OneNote C++ API?

    我正在考虑通过 C 编程修改 Microsoft Office OneNote 内容 具体在使用快速归档对话框界面 但是那里提供的所有示例都是针对C 的 我想知道C 的API是否可用 如果有的话我可以从哪里开始学习它们 我只是想使用该对话框
  • Angular 5测试组件静态方法

    我正在测试的 Component 类上有一个静态方法 我的问题是如何在我的规范测试文件中访问该方法 到目前为止 我可以通过以下方式访问组件实例 let fixture TestBed createComponent MyComponent
  • 如何执行递归搜索?

    我有一个任务类 它可以有相同类型的子任务 public class Task public DateTime Start get set public DateTime Finish get set public List
  • 我对套接字的 fwrite 不会刷新,直到套接字关闭。如何改变?

    我对套接字的 fwrite 不会刷新 直到套接字关闭 如何改变 我希望它在每次写入后刷新 我试过了 1 冲洗 2 刷新 3 ob implicit flush 真 这些都不起作用 我仍然必须退出 php 让我的套接字接收数据 包括一些示例代
  • Rails:如何使用范围在数组数组中查找元素

    我有一个数组数组 例如 2 3 3 1 6 1 每个子数组的第一个元素是用户 ID 第二个元素是用户为活动预订的座位数 我想让每个用户通过在数组中查找他的 ID 来查看他的预订 假设我有两个模型 用户和事件 在用户控制器中 我想使用类似的范
  • 唯一标识调试器中的引用类型

    我有 C 背景 如果这是非 C 的思维方式 我很抱歉 但我只需要知道 在 C 中 如果我有两个指针 并且我想知道它们是否指向同一对象 我可以查看内存 监视窗口并查看它们的值 看看它们是否指向相同的内存空间 在 C 中 我还没有找到类似的东西