【WebStorm教程】GoLand 如何逐步执行程序?

步进是控制程序逐步执行的过程。
GoLand 提供了一组步进操作,根据您的策略使用这些操作(例如,您是需要直接转到下一行还是输入途中调用的方法)。
步进按钮位于调试窗口工具栏上。
Step over
跳过当前代码行并带您到下一行,即使突出显示的行中有方法调用。方法的实现被跳过,直接进入调用者方法的下一行。
- 单击“跳过”按钮
或按F8。
在下面的示例中,将执行第 29 行。如果您跳过,调试器将直接移动到第 30 行,而不会跳转到 New() 函数。
如果跳过的方法中有断点,调试器将在它们处停止。要在途中跳过任何断点,请使用Force step over。
Step into
进入该方法以显示其中发生的事情。当您不确定该方法是否返回正确的结果时,请使用此选项。
- 单击Step into按钮
或按F7。
在下面的示例中,将执行第 29 行。如果您进入,调试器将跳转到该New
函数的实现,允许您详细检查其结果是如何产生的。
如果在线上有多个方法调用,GoLand 会询问您输入哪个方法。此功能称为智能步入。
Smart step into
当一行中有多个方法调用,并且您想明确输入哪个方法时,智能单步进入很有帮助。此功能允许您选择您感兴趣的方法调用。
- 从主菜单中,选择运行 | 调试操作 | 智能步入或按Shift+F7。
- 单击方法。您也可以使用箭头键或选项卡选择它,然后按Enter/ F7。
Step out
跳出当前方法并带您到调用者方法。
- 单击“退出”按钮
或按Shift+F8。
在示例中,跳出会跳过循环的所有迭代,并直接将您带到main
方法(调用者)。
Run to cursor
继续执行,直到到达插入符号的位置。
- 将插入符号放在您希望程序暂停的行。
- 单击运行到光标按钮
或按Alt+F9。
此外,您可以通过单击装订线中的行号来运行到光标。
您可以配置是否希望Run to Cursor在Settings/Preferences |单击行号时工作。构建、执行、部署 | 调试器。
在示例中,Run to cursor 将继续执行并在第 7 行停止,就像有一个断点一样。如果方法中有断点count()
,程序将在那里暂停。
要在途中跳过任何断点,请使用Force run to cursor。
Force run to cursor
继续执行,直到到达插入符号的位置。途中的所有断点都将被忽略。
- 将插入符号放在您希望程序暂停的行。
- 从主菜单中,选择运行 | 调试操作 | 强制运行到光标或按Ctrl+Alt+F9。
在示例中,Force run to cursor将继续执行并在第 7 行停止,就像有一个断点一样。里面的断点count()
不会有任何影响。
Force step over
跳过当前代码行并带您到下一行,即使突出显示的行中有方法调用。如果被调用的方法中有断点,它们将被忽略。
- 从主菜单中,选择运行 | 强制跨步或按Alt+Shift+F8。
到达断点时,调试工具窗口变为活动状态,使您能够控制程序的执行。为此,您可以使用“运行”菜单命令,或“调试”工具窗口中步进工具栏上的图标。
每个步进操作都会将执行点推进到下一个执行位置,具体取决于您选择的操作。