...
BREAKPOINT `int i = 10 + 12;`
...
当我在Android Studio中为代码添加断点时,AS会按预期运行到我添加断点的行。但是,如果在断点线之后没有代码,我就无法在调试器中看到i
解析的内容。我可以通过插入一行虚拟代码来解决这个问题,但必须有一种更简单/更优雅的方法来解决我所缺少的这个问题。
如何避免添加虚拟代码行来查看这些值?
编辑:我使用的是最新版本的Android Studio(1.0.2)
答案 0 :(得分:2)
可以在您要执行的最后一行之后的行上设置断点。
断点在执行断点下的行之前停止执行。
在上面的示例中,引入了一个新变量(i
),该变量目前尚未为解释器所知。为了对这个变量进行初始化,有必要重新执行(执行)代码行。
请参阅下面的示例,其中包含一个包含问题代码行的测试函数:
我在函数{
的起始大括号,相关行以及结束大括号}
上添加了断点。请注意,第一个断点处有一个X,因为它无效。当前执行点在深蓝色高亮线上(或刚好在执行之前)。请注意,下面的“变量”窗口中不存在变量i
。
当我跳过(执行)代码行时,活动行现在位于函数}
的最后一个括号中,并且变量i
现在已初始化并设置:
所以,如果你有兴趣在给定代码行之后打破,只需将之后的断点放在那行代码中,即使该行是函数的最后一个支撑。
注意:如果有一个退出语句(例如break
,return
等)作为函数中最后执行的代码行,则不会起作用。