更新时间:2024-04-12 GMT+08:00
分享

代码重构操作

重构是通过改变现有程序结构而不改变其功能和用途来提高代码的可重用性和可维护性。CodeArts IDE 支持重构操作,提供了多种重要的重构类型,来改变编辑器中的代码库。CodeArts IDE for C/C++ 内置了对 C/C++ 重构的支持,在本专题中,我们将展示 C/C++ 语言服务的重构支持。

  • 定义构造函数(Define constructor)

    在每次创建类时,可以自动定义类的构造函数,并且初始化成员。当单击或选中类名时,可以单击左侧黄色灯泡选择定义构造函数。

  • 根据声明顺序排序函数(Sort functions to declarations)

    根据头文件中的声明顺序,排序当前定义函数/方法的顺序。当单击或选中当前函数/方法定义时,重构选项可用。

  • 将定义添加到实现文件(Add definition to implementation file)

    将头文件的定义添加到实现文件中。当单击或选中当前函数/方法时,重构选项可用。

  • 交换 if 分支(Swap if branches)

    若当前条件只有if和else分支,选中代码片段后,选择交换 if 分支(Swap if branches),可自动交换if和else分支。

  • 内联变量(Inline variable)

    该功能可以用相应的值替换所有引用。假设计算值总是产生相同的结果。选中需要替换的内容,重构选项可用。

  • 内联函数(Inline function)

    该功能尝试使用适当的代码内联所有函数用法。它只能处理简单的功能,不支持内联方法、函数模板、主函数和在系统头文件中声明的函数。该功能可以内联所有函数引用。

  • 生成 getter 和 setter(Generate getter and setter)

    通过为其生成getter和setter(Generate getter and setter)来封装选定的类属性。同时也可以选择只生成getter(Generate getter)或者生成setter(Generate setter)选项。

  • 声明隐式成员(Declare implicit members)

    此选项会将类的隐式成员在类中声明,当选中类名时,重构选项可用。

  • 填充 switch 语句(Populate switch)

    该功能可以自动填充switch语句。选中任意switch字段,并且单击黄色灯泡,选择填充switch语句

  • 移除 namespace(Remove using namespace)

    移除namespace功能,会自动移除所有使用到的namespace。当光标单击或选中namesapace关键字时,重构选项可用。

  • 移动函数体到声明处(Move function body to out-of-line)

    将函数/方法定义移动到它声明的位置。

  • 在内部添加定义(Add definition in-place)

    在当前函数/方法并且在类内部生成函数定义。当光标移动到函数/方法时,单击黄色灯泡,重构选项可用。

  • 在外部添加定义(Add definition out-of-place)

    在类外部生成当前函数/方法的函数定义。当光标移动到函数/方法时,单击黄色灯泡,重构选项可用。

  • 展开宏(Expand macro)

    在页面上添加展开宏(Expand macro),以便在可扩展/可折叠的部分提供内容。

  • 展开 auto(Expand auto type)

    展开 auto type所隐藏的变量类型。

  • 函数定义外移(Move function body to declaration)

    该功能会将函数/方法的定义移动到声明的位置。

  • 函数定义内移(Move function body to out-of-line)

    该功能会将函数/方法的定义移动到对应的文件中。

  • 转为原始字符串(Convert to raw string)

    此方法可以将转义后的字符串转换为原始的字符串。当单击或选择了当前字符串,单击黄色灯泡,重构选项可用。

  • 快速修复(Quick fixes)

    快速修复是解决简单编码错误的建议编辑,包括自动补全,实时语法检查等。当光标移动或单击到C/C++的代码错误上时,会显示黄色灯泡,表示可以使用快速修复。单击灯泡或按Ctrl+.会显示可用的快速修复和重构列表。

相关文档