CLion提供了一组用于不同调试策略的步进操作,例如,您需要直接进入下一行还是在前进的过程中进入调用的函数。

为了在执行步进操作时避免在编辑器中产生许多选项卡,可以启用预览选项卡。它允许您在单个选项卡中逐个查看文件,而无需在新选项卡中打开每个文件。

步进操作位于调试器窗口工具栏上和App client expui general more vertical菜单中:

1.png

逐过

逐过当前行并将您带到下一行,即使当前行包括函数调用。函数调用将被跳过,您将直接移到调用者的下一行。

  • 单击“逐过”按钮 逐过按钮 或按F8。

如果在跳过的方法内有断点,调试器将停在那里。要跳过路径上的任何断点,请使用强制逐过。

逐入

进入所调用函数的代码内部。

  • 单击“逐入”按钮 逐入按钮 或按F7。

某些方法会被Step Into跳过,因为通常您可能不需要调试它们。此列表可以在“设置”对话框的“Build, Execution, Deployment | Debugger | Stepping”页面上进行微调(CtrlAlt+S)。

智能逐入

当一行上有多个方法调用时,智能逐入非常有用,您希望明确要进入哪个方法。此功能允许您选择感兴趣的方法调用。

此功能不适用于C/C++调试。但是,您可以在其他语言(如JavaScript和Python)中使用它。

  1. App client expui general more vertical菜单中选择“智能逐入”或按ShiftF7。
  2. 单击方法。您还可以使用箭头键或选项卡选择它,然后按Enter/F7。

您可以配置智能逐入,以便在一行上有多个方法调用时始终使用它,而不是常规的Step Into。这是在“设置 | Build, Execution, Deployment | Debugger | Stepping”中完成的。

逐出

退出当前函数并将您带到调用者的代码。

  • 单击“逐出”按钮 逐出按钮 或按ShiftF8。

运行到光标

继续执行,直到光标的位置被达到。

  1. 将光标放在您希望程序暂停的行上。
  2. App client expui general more vertical菜单中选择“运行到光标”或按AltF9。

在经典UI中,您还可以通过在装订线中单击行号来运行到光标。

您可以配置是否要在单击行号时启用“运行到光标”在“设置 | Build, Execution, Deployment | Debugger”中。

要跳过路径上的任何断点,请使用强制运行到光标。

强制逐入

即使默认情况下被常规Step Into跳过,也会进入函数。

  • App client expui general more vertical菜单中选择“强制逐入”或按AltShiftF7。

如果您要进入的函数的源代码不可用,您可以在专用视图中调试反汇编代码。

强制运行到光标

继续执行,直到光标的位置被达到。路径上的所有断点都将被忽略。

  1. 将光标放在您希望程序暂停的行上。
  2. App client expui general more vertical菜单中选择“强制运行到光标”或按CtrlAltF9。

强制逐过

逐过当前行的代码并将您带到下一行,即使突出显示的行中包含方法调用。如果在所调用的方法中有断点,则它们将被忽略。

  • App client expui general more vertical菜单中选择“强制逐过”或按AltShiftF8。

可逆调试

尽管CLion默认不支持可逆调试,但您可以在Linux上使用Undo插件来设置它。

该插件集成了Undo的记录、倒带和重放技术到CLion中。使用Undo,您可以记录程序的执行,直到单个指令,以供进一步重放和分析。这样,调试器就变成了可逆的:您可以在代码中前进和后退,看到发生了什么。

标签: clion破解, clion破解教程, clion教程, clion基础教程, clion高级教程, clion核心教程, clion免费激活码, clion免费注册码, clion注册码在线生成, clion激活