为什么 .net 中的对象引用错误异常不告诉我哪个对象为空?

2024-02-17

也许问这个问题暴露了我对这个过程缺乏了解,但话又说回来,没有更好的理由来问了!

跟踪这些可能会令人沮丧,因为堆栈跟踪可以帮助我知道从哪里开始查找,但不知道哪个对象为空。

这里到底发生了什么?是因为变量名称没有捆绑在可执行文件中吗?


使用全面优化构建的 .NET 代码,没有调试信息:您的局部变量名称消失了,某些局部变量可能已被完全消除。

使用完全优化+ PDB(或完全调试)构建的.NET代码:保留了大多数局部变量名称,一些局部变量可能已被消除

没有优化+没有调试信息:局部变量名称消失了。

然后我们必须考虑到您正在处理的任何内容可能根本不在局部变量中 - 它可能是先前函数调用的结果,您在该函数调用上链接了一个新函数调用。

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

为什么 .net 中的对象引用错误异常不告诉我哪个对象为空? 的相关文章

  • Json.NET 在返回 json 序列化字符串时添加反斜杠

    我正在尝试使用 Json NET 将列表序列化为 json 字符串 但返回字符串中包含反斜杠 这又导致 json 解析失败 var x from d in entities Books ToList select new ID d ID B
  • Xcode 在调试版本中是否有自动设置的宏?

    所以我可以写这样的代码 ifdef whatever do stuff that will never show up in the production version endif 默认情况下没有什么用处 但您可以设置DEBUG用于调试构
  • mono 的 mdb 文件与 csc 的 pdb 文件

    I have 这个帖子 https stackoverflow com questions 4474326 c equivalent to pythons traceback library这教会了我有关 pdb 文件和 StackTrac
  • Nodejs 进程挂起,我该如何调试它或收集转储?

    我的nodejs进程在Linux上运行 现在挂起并且CPU为100 无论如何我可以调试它并找到原因吗 我需要收集转储吗 如何收集 谢谢 有一个 npm 模块叫做节点为何运行 https www npmjs com package why i
  • !堆失败。 ntdll!_HEAP_ENTRY 的类型信息无效

    我正在尝试从 Windows Server 2003 SP2 x86 上的完全转储内存文件转储堆信息 转储是为在 Windows Server 2003 SP2 x64 计算机上运行的 32 位混合 本机 clr 应用程序创建的 从以下 W
  • 如何在 Ubuntu x64 中使用 ptrace 插入 int3?

    我正在努力追随本指南 http eli thegreenplace net 2011 01 27 how debuggers work part 2 breakpoints 通过设置断点达到相同的结果 唯一的区别是我在 x64 系统上 所以
  • 使用多个窗口通过 Eclipse 进行调试

    我通常运行双显示器设置 因此我为同一工作区打开两个 Eclipse 窗口 显示不同的文件 当我调试并命中断点时 Eclipse 会切换到 调试 透视图 但它还会在我的两个窗口中显示断点所在的文件 行 即使包含断点的文件在一个窗口中打开 但在
  • 从 Python 调试 C 库 (ctypes)

    我有一个使用 ctypes 和 C 共享库 dll 文件 的 Python 程序 作为 IDE 我使用 Eclipse 其中将开发两个项目 C 共享库和使用它的 python 程序 我的想法是 当我在调试模式下启动Python程序时 我可以
  • Awaiter (GetAwaiter) 和ContinueWith 有什么区别

    在 net 4 0中 我经常使用Task ContinueWith 但是之后我发现了 task GetAwaiter https stackoverflow com a 14171923 284758这似乎有同样的目的 有什么不同 如果您的
  • 有没有办法使用 Eclipse 调试 Web 应用程序?

    我正在使用 Eclipse Java IDE 开发 Web 应用程序 我使用 Tomcat 6 作为我的 servlet 容器 可用于 Java 的工具 包括 Eclipse 似乎缺乏 Web 应用程序的调试功能 与 NET 平台的 Vis
  • iPhone——是否可以在 Xcode 调试器中检查 UIView 的框架?

    当调试器在断点处停止时 我在那里找不到任何 UIView 的框架 是否有可能做到这一点 编辑 由于缺乏回应而开始赏金 需要明确的是 我正在寻找一种在不添加额外调试代码的情况下查看框架的方法 另外 如果答案是 不 你不能这样做 赏金将用于解释
  • 如何在调试器中显示 TStringList 的内容?

    我想在调试应用程序时显示 TStringList 的全部内容 相反 我只是得到指示 Flist 仅显示地址 如果您使用的是 Delphi 2010 或更高版本 调试器允许使用调试可视化工具 http docwiki embarcadero
  • 错误:“无法在 Web 服务器上开始调试...”ASP.NET 4.0

    当我想在 IIS 服务器上创建网站时出现错误 我使用的是 Windows 7 和 Visual Studio 2010 我是否必须为 IIS 注册或配置 asp net 4 0 这里没有太多细节 但是当我尝试在刚刚从 3 5 更改为 4 0
  • 调试:在 Android 1.0 中找不到文件

    今天我更新到 Android Studio v 1 0 在尝试编译任何项目时出现以下错误 app build intermediates classes debug 找不到文件 问题是在更新之前我没有任何问题 这是我实际尝试编译的代码 构建
  • Visual Studio Code 调试控制台中的 pydevd 警告

    我已经搜索了一段时间但找不到任何相关问题 当使用 Visual Studio Code 和 Python 扩展来调试大型元素时 计算表示或获取属性可能需要一些时间 在这些情况下 会出现如下警告 pydevd 警告 计算 DataFrame
  • 如何从 Android 应用程序调试共享库 [单独的项目]

    我正在开发一个 Android 应用程序并在项目中使用密集的 C 代码 首先 我将c 源代码放入项目中 并使用以下指南在Android应用程序中具有本机调试的NDK功能 http tools android com recent using
  • 调试VBA、定位问题及排查方法[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有哪些方法调试VBA代码 具体来说 单步执行代码 断点和停止命令 TheDebug command 当地人和观察窗 调用栈 调试 VB
  • 使用C#属性来跟踪函数调用、变量和返回值?

    在Python中 我可以使用装饰器来跟踪函数调用 它的变量和返回值 这是非常容易使用 我只是想知道 C 可以做同样的事情吗 我发现网上有CallTracing Attribute的示例代码 然而 它并没有显示出我预期的结果 C 属性与 py
  • C 编程:seg 错误、printf 和相关的怪癖[重复]

    这个问题在这里已经有答案了 正如许多年轻的程序员所做的那样 我了解到在代码中的不同点插入大量 here1 here2 等打印到控制台语句的有用性 以找出我的程序何时出错 在我的计算机科学学习过程中 这种强力调试技术已经拯救了我很多很多次 然
  • 为什么 Google 测试会出现段错误?

    我是 Google Test 的新手 正在尝试提供的示例 我的问题是 当我引入失败并设置GTEST BREAK ON FAILURE 1 或使用命令行选项 GTest 将出现段错误 我正在考虑这个例子 https code google c

随机推荐