Visual Studio 2008调试 - 跳过代码

21

有没有一种方法可以跳过代码而无需在其后设置断点?我正在使用调试工具来探索运行多次的GUI绘图事件的代码。 我希望在触发事件完成后看到接下来发生了什么,而不必一遍又一遍地单击下一步。

4个回答

44
[DebuggerHidden] 

当这个属性被加到构造函数/方法/属性或索引器上时,那段代码将会被隐藏不被调试器所显示。你将无法进入这段代码,调试器只会跳过它。即使你在被标记的代码中设置了断点,调试器也会忽略它。

[DebuggerStepThrough]

这个属性与DebuggerHiddenAttribute相同,除了在使用DebuggerStepThroughAttribute修饰的代码中可以设置断点,并且调试器将停止在该断点处。

[DebuggerNonUserCode]

这个属性将代码区段标记为非用户代码,您可以在"工具->选项->调试->常规->启用仅限我的代码"选项中使用它,告诉调试器不要步入装饰的代码。


不知道这些中的任何一个。很棒。 - Nathan Taylor
跨越烦人的绘图函数的最佳方法。 - Steve

7

您可以指定断点条件(右键单击断点红色圆圈图标),以便断点仅在发生有趣的事情时停止执行。


1
这可能是这个问题的更可行的答案,因为它可以不用在代码中添加属性来完成。不过,Jaimal的建议也很棒。 :D - Nathan Taylor

5

以下是另一个方便的方法: 如果您当前处于断点状态,并且想要运行到代码中的其他位置,您可以右键单击要运行到的行,然后选择“运行到光标”。


4
如果你想在断点后执行代码,一直到另一行,请使用JMarsch的“Run to Cursor”建议。
如果你想跳过以下代码行,并在另一个点恢复执行,可以使用鼠标将代码窗口左侧边缘的黄色箭头拖动到下一个要执行的行。
如果你想重新执行已经运行过的代码,也可以使用此方法 - 只需将黄色箭头拖动到该行即可。我经常用这种方法来“Step Into”我已经执行了“Step Over”的代码。
右键菜单中的“Set Next Statement”具有相同的效果。
-Tom Bushell

将箭头拖到“跳过执行”上,即可跳过执行。如果您将其向前拖动,它会像“运行到光标处”一样工作。 - G-Wiz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接