代码之家  ›  专栏  ›  技术社区  ›  Igal Tabachnik

通过获取方法的返回值DTE.调试器不评估方法?

  •  1
  • Igal Tabachnik  · 技术社区  · 14 年前

    我正在寻找一种通过visualstudio调试器(使用DTE)获取方法返回值的方法。如果我在方法的右大括号处,但尚未退出,是否可以获得它?另外,如果不需要通过立即窗口再次评估函数就可以实现这一点,那将是最好的。

    1 回复  |  直到 14 年前
        1
  •  2
  •   Hans Passant    14 年前

    不。调试器没有足够的关于JIT编译器生成代码以返回值的确切方式的信息。它是抖动的一个繁重的实现细节,以及它为之生成代码的特定体系结构。

    简单的类型,如对象和整数类型不是什么大问题,通常是EAX/RAX寄存器、FPU堆栈或XMM0寄存器。当方法返回一个结构时,它会变得复杂。映射到它的寄存器,但当结构太大时需要溢出到临时堆栈缓冲区中。