我正在Visual Studio上调试一段代码,我忘了记下我一直在监视的值。我可以在不重新运行整个代码的情况下转到上一行吗?SO上也有类似的问题,但就我而言,我没有遇到任何错误或异常。代码运行正常。
在断点上暂停后,右键单击要"返回"到的行。 从弹出的菜单中,选择"设置下一个语句"。
这将调整指令指针以从指定的代码行继续,但它不会将任何变量或内存地址回滚到最初执行该行代码之前的值。
听起来您要做的是倒带/重播代码,而不仅仅是移动到特定行。您可以移动到特定行,只需右键单击并选择 set next statement
.不幸的是,这不会将程序的状态倒退到过去的某个点(除了设置堆栈和做一些展开
要倒带/重播,您需要稍微棘手一点。一些选项是: -
- VMWare 重播,这将允许您录制然后返回到某个时间点。
- 智能跟踪。我还没有尝试过,但它可以让您重播到一定程度。
这有点重量级,现在不会帮助你。
您可以使用鼠标拖动指向"要执行的下一个语句"的黄色箭头。这实际上改变了接下来将执行的语句。它不能保证有效,但只要代码不是太复杂,它就可以。