提取宏定义的重构方法使用 #define 指令将所选的一组标记定义为宏,并在代码中使用宏调用来替换这组标记;宏定义可以位于当前文件中,也可以移动到相关的头文件中。

示例

BeforeAfter
int main() { int maxValue = 65536 * 65536; return 0; }#define MAX 65536 int main() { int maxValue = MAX * MAX; return 0; }

在原地提取宏定义

  1. 在编辑器中,选择要用宏调用替换的表达式。您可以自己进行选择,也可以使用智能表达式选择功能来让 CLion 帮助您。因此,请执行以下操作之一:

    • 高亮显示表达式。然后从主菜单或上下文菜单中选择“Refactor | Extract | Extract Define”。或者,按下 CtrlAlt0D。
    • 将光标放在表达式之前或之内,在主菜单或上下文菜单中选择“Refactor | Extract | Extract Define”,或按下 CtrlAlt0D。在 Expression 弹出菜单中,通过单击所需的表达式来选择表达式。或者,使用上箭头和下箭头键导航到感兴趣的表达式,然后按 Enter 键选择它。

    Expression 弹出菜单包含适用于编辑器中当前光标位置的所有适当表达式。

    在弹出窗口中导航到建议的表达式时,编辑器中的代码高亮显示会相应地更改。

  2. 如果找到了选定表达式的多个出现,则在“Multiple occurrences found”弹出菜单中选择 Replace this occurrence only 或 Replace all occurrences 中的一个。
    1.png

    • 要选择所需选项,只需单击它。或者,使用上箭头和下箭头键导航到感兴趣的选项,然后按 Enter 键选择它。
  3. 如果要将宏定义移动到头文件中,请选择“Put to header”复选框。
  4. 指定宏的名称。请执行以下操作之一:

    • 从列表中选择一个建议的名称。要执行此操作,请双击合适的名称。或者,使用上箭头和下箭头键导航到感兴趣的名称,然后按 Enter 键选择它。
    • 通过输入来编辑名称。名称显示在带有红色边框的框中,并且随着您的输入而更改。完成后,按 Enter 键。
      2.png

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