智能编辑器

代码补全

在 CLion 中,您可以通过使用代码补全来更快输入代码。 开始输入关键字、变量、函 数或类,即可获取相符建议的列表。 要进一步节省时间,只要输入名称(CamelHumps 匹配)或其中一部分即可(Middle 匹配)。

IDE 还可以为外部库中的符号和您项目中使用的框架建议补全选项。

适用于 C 和 C++ 的后缀代码补全让您可以在刚刚输入的表达式周围添加代码。 它不仅仅是通过常用的语言结构封装表达式,还可以将表达式作为自由函数的第一个参数传递。

该基本代码补全功能在您输入时同时进行。 此外,CLion 还提供智能补全(按 Ctrl+Shift+Space),它可以根据代码上下文智能筛选建议。

代码样式

CLion 可以维护您的代码格式,使其与配置的代码样式 指南相符。 它在您输入时同时运行,此外也可以通过 Reformat Code 操作 (按下 Ctrl+Alt+L)主动发起。

代码样式可以在 Editor | Code Style 设置中进行配置。 您可以设置常规 配置,以及语言特定选项(比如 C/C++、CMake、 HTML 或 XML)。

代码样式定义了诸如空格、对其规则、制表符和缩进、代码生成和 空行等元素。 对于影响代码的代码样式设置,CLion 可以立即给出预览,高亮显示受近期更改影响的行。

高级选项

您还可以选择提取或保留特定文件中部分的已有格式。 打开文件时,CLion 会告诉您它的缩进是否与您当前的代码样式 设置不同。

接着您就可以在编辑文件时选择是强化自己的样式设置,还是 保留已有的缩进风格,包括任何重新格式化。 该功能可以通过 Editor | Code Style.. 设置开启或关闭。

CLion 可以让您仅对选定的代码片段更改设置。 选择代码并使用名为 Adjust code style settings 的快速修复 (Alt+Enter)。

高亮显示和配置

解析上下文

如果代码高亮显示取决于 CMake 项目中的标记和变量,那么 CLion 可以以正确的方式高亮显示代码 - 只要选择建构/运行配置,IDE 就可以自动为您切换解析上下文。

如果您更希望使用手动切换器,那么可以在编辑器右下角找到它。

C/C++ 路径导航

路径导航

使用路径导航轻松追踪代码中的位置 - 这些位于编辑器底部的小标记可以帮您在代码中导航。 CLion 会在那里显示命名空间、类、结构、函数和 lambda。

预定义代码样式

在 CLion 中,您可以选择预定义代码样式并将其应用到您的代码样式 配置中。 提供 GoogleLLVMLLDBGNUMicrosoftQtStroustrup 代码样式,以及 AllmanWhitesmithsK&R 大括号指南。 使用 Set from... | Predefined Style 选择您最喜欢的样式。

这也适用于代码格式化选项、C/C++ 命名样式和头文件保护符。

命名约定

命名设置

CLion 尊重您提供的命名方案。 在以下情况下使用选择的设置:

  • 自动补全代码
  • 生成代码
  • 重构代码
  • 应用快速修复

您可以在 Settings | Editor | Code Style | C/C++ | Naming Convention 中手工配置风格,或者从预定义方案中选择命名。

参数提示

参数提示

由于参数名提示,您可以避免在探索函数调用时切换到函数签名。 这反过来应该有助于提高代码可读性。

对于函数调用、lambda、构造函数、初始化列表和宏表达式,CLion 显示传递参数的参数名。 如果参数是文字或有多个操作数的表达式,则此方法有效。

类型提示

类型提示

CLion 为推导类型添加了类型提示以提高代码可读性。 这些提示可针对 auto 变量、在结构化绑定中,以及针对 lambda 返回类型显示类型。

您可以在 Settings | Editor | Inlay Hints | C/C++(设置 | 编辑器 | 嵌入提示 | C/C++)中或直接从提示的上下文菜单中禁用或启用特定类型提示。

ClangFormat

解析上下文

CLion 以 ClangFormat 作为另一种代码格式化程序。 在 CLion 中为当前项目或所有项目启用,让 CLion 使用它设置代码格式。

CLion 检测项目中的 .clang-format 配置文件,并且建议切换到 ClangFormat。

代码辅助

如果您自定义项目中的 .clang-format 配置文件,当您更新它们时,可以受益于代码辅助功能。

了解详情

代码选择和注释

要在 CLion 中快速选择代码块,您可以将光标放到代码块中,然后多次按下 Ctrl+W 来扩大选择范围,从符号到 表达式,到一行,以至到 逻辑代码块等等。 要缩小选择范围,请根据需要多次按下 Ctrl+Shift+W

在选择代码块后,您可以向它添加块注释 (Ctrl+Shift+/) 或行注释 (Ctrl+/)。 如果您希望给一行添加注释,那么甚至无需选择行 - 只要在上面添加脱字符号并按下 Ctrl+/ 即可。

参数信息

如果您不确定函数接受哪种参数,那么 CLion 可以帮到您。 调出 Parameter Info (Ctrl+P) 查看所有可用的函数签名和 参数。 开始编辑参数时,CLion 将以灰色显示所有不兼容的签名。

解包/移除代码

要安全、精确地移除具有大量嵌套语句的复杂代码中的封闭部分,请使用 Unwrap/Remove… 操作 (Ctrl+Shift+Delete)。 它会根据您的脱字符号位置来给出选项建议,并可以解包 ifelseforwhiledo..whilefor 等控制语句。

多个插入符号和选择

如果您曾经梦想过同时执行多个操作,那么 CLion 可以让 您的 梦想成真。 利用多个脱字符号,您可以同时编辑文件中的多个位置。

使用鼠标选择多个要编辑的位置(按下 Alt+Shift 并 使用鼠标左键放置脱字符号),或者通过 Alt+J 向选择中添加 几个随后的实例 (或者使用 Alt+Shift+J 将其移除)。

然后,您就可以同时编辑所有选定位置了,并在所有这些位置充分利用代码补全和实时模板。 完成后,按下 Esc 键返回单脱字符号模式。

代码重新排列

您可以上下移动整行和代码块来重新排列代码。 要在不选择行的情况下移动 它,只要按下 Alt+Shift+Up/Down 即可。 要 移动选定的代码块,请使用 Ctrl+Shift+Up/Down

自动导入

在开始使用尚未导入的符号时,CLion 会搜索并建议添加对应的包含文件,甚至在完成代码时自动添加它。

快速定义

您甚至还可以在不离开当前上下文的情况下 查看函数 的实施或声明。 只需将脱字符号放在符号上,然后按 Ctrl+Shift+I 即可调出 Quick Definition 弹出窗口。

快速文档

此外,Quick Documentation 弹出窗口 (Ctrl+Q) 还可以为选定的类、函数、变量、参数或宏提供文档。

Quick Documentation 可以为声明为自动的变量显示宏替换推断类型,以及引用类型和 Doxygen 样式文档预览的链接。