问题

在行运行之后和指令指针返回调用函数之前,是否可以看到方法的返回值?

我正在调试我无法修改的代码(读取:不想重新编译第三方库),有时它跳转到我没有源代码或返回表达式有副作用阻止我能够在显示选项卡中运行表达式。

通常返回值在复合语句中使用,因此变量视图永远不会向我显示该值(因此希望在控制返回到调用函数之前查看结果)。

**更新:**我无法使用表达式查看器,因为语句中存在副作用。


#1 热门回答(33 赞)

找到了一个非常好的捷径。选择返回值的表达式,然后按

Ctrl + Shift + D

这将显示return语句的值。如果你不能或不想仅仅为了调试目的而进行更改,这非常有用。

希望这可以帮助。

注意:尚未使用第三方库对此进行测试,但它对我的代码工作正常。为Web开发人员测试了这个onEclipse Java EE IDE。版本:Juno Service Release 1


#2 热门回答(32 赞)

此功能已添加到Eclipse版本4.7 M2 underEclipse bug 40912中。


#3 热门回答(6 赞)

这就是为什么我总是坚持使用以下方法:

MyReturnedType foo() {
     MyReturnedType   result = null;

     // do your stuff, modify the result or not

     return result;
}

我的规则:

  • 只有一个return语句,仅在方法结束时(最后允许)
  • 始终有一个本地调用的结果,它保存返回值,从默认值开始。

当然,最琐碎的吸气剂是免税的。


原文链接