2014-10-16 41 views
6

比方说,我有以下代码:是否可以在调试时修改Eclipse中某个函数的响应?

if(shouldDoSomething()) { 

    // amazing code here 
} 

而且我们也可以说shouldDoSomething()是我没有源代码的方法。即使shouldDoSomething()返回false,是否有任何方法可以强制代码进入if块?反之亦然?

我在Visual Studio中的C++知道我可以更改EAX寄存器中的值,并在我的路上,但我不知道在代码写入此风格时是否有类似的调试Eclipse的调试?

重构代码以捕获变量中的响应不是一种选择。

回答

4

或许有这样做的更合适的方法,但这应该工作:

1)步入(F5)你想改变返回值的方法。如果你没有这个方法的源代码并且它进入一个类文件,那很好。

2)打开显示视图(窗口>显示视图>显示),然后键入true到它

3)选中就可以了true你刚刚输入和点击右键并选择强制返回(或按Alt + Shift + F)

4)继续浏览你的代码。如果你的if语句设置为你的问题,那么现在应该进入if语句块。

+0

工作很好。无可否认,这种情况被淡化了。想象一下,返回的是一个需要调整的类,比如'doSomething(getSomething())',但是你的答案解决了这个问题,如果有必要,我可以在后面发布一个新的更详细的问题。谢谢! – 2014-10-16 19:50:36

相关问题