专业的编程技术博客社区

网站首页 > 博客文章 正文

CLion新版增强谷歌测试支持,Makefile,Qt等功能

baijin 2024-10-12 02:12:47 博客文章 12 ℃ 0 评论

CLion是一款专为开发C及C++所设计的跨平台IDE。它是以IntelliJ为基础设计的,包含了许多智能功能来提高开发人员的生产力。这种强大的IDE帮助开发人员在Linux、OS X和Windows上来开发C/C++,同时它还使用智能编辑器来提高代码质量、自动代码重构并且深度整合CMake编译系统,从而提高开发人员的工作效率。感兴趣的朋友欢迎下载试用!

增强的Google测试支持

CLion支持最流行的C ++单元测试框架,还为CMake项目提供了内置的CTest运行程序。除了研究2020.3中的CTest之外,还致力于对Google Test集成以及内置的测试运行程序进行一些改进:

  • 现在,CLion在内置测试运行器中显示完整的测试树,同时一个接一个地执行测试。
  • 对于参数化测试,CLion现在在测试树中立即显示测试参数。
  • 现在,禁用的测试(DISABLED名称中带有前缀的测试)也将显示在测试树中,并带有相应的图标。


顺便说一下,我们2020年的研究表明,有31%的C ++开发人员正在使用Google Test,这使其成为世界上最受欢迎的单元测试框架。希望以上改进能使您在CLion中使用Google Test的体验更流畅,更高效。

重新编译Makefile项目的单个文件操作

为了加快开发过程,有时您可能需要编译一个文件而不构建整个项目。为此,CLion提供了“Recompile”操作。现在,它适用于Makefile项目!在Windows / Linux上(使用Ctrl+Shift+F9),在MacOS上使用??F9,或者干脆通过Build | Recompile ‘file name’构建它。

为Qt项目提供更多帮助

到目前为止,在2020.3 EAP中,已经宣布了针对Qt Console可执行文件和Qt Widgets可执行项目类型的新Qt模板。在此版本中,改进了这些模板的“New project”对话框,添加了Qt CMake前缀路径字段和Qt版本:

模板本身也已更新。

信号和时隙机制是Qt的主要特征,因为它们是用于对象之间通信的实体。现在,CLion知道何时必须完成信号或插槽,并仅在完成下拉列表中过滤相应的成员。例如,对于信号:

或插槽:

当然,SIGNAL和SLOT宏也是在这样的位置代码完成可用,而所有不相关的类成员被过滤掉。

最后,CLion现在支持Qt样式的自动导入。例如,对于QUrl类型,将建议:#include

模板的更准确的代码完成

自从将代码完成功能转移到CLion中基于Clangd的引擎以来,我们已经对其进行了重大改进。它变得越来越快,越来越准确,我们正在不断改进它。这次,我们修复了模板的几个代码完成问题。

  • 固定:功能模板中的容器元素未完成显示(CPP-20919)。
  • 修正:完成不能正确使用模板类型(CPP-22204,CPP-19682)。

Clang-Tidy更新通知

CLion使用基于Clang的语言引擎和相应LLVM版本中的Clang-Tidy。内置的Clang-Tidy的版本可以在“Settings/Preferences | Languages & Frameworks | C/C++ | Clang-Tidy完成。在配置文件中使用“-*”模式时,某些较新的检查可能不会在CLion中显示。

我们引入了一条通知,通知您何时将Clang-Tidy更新到新版本,以便您可能需要更新配置文件。

如果您单击通知中的“Review”链接,则会根据当前配置文件获得可用新支票及其激活状态的列表:

如果您不依赖CLion配置来使用Clang-Tidy,而是使用自己的配置,则通知还会警告您“ clclang-tidy files may overwrite your IDE settings”。在这种情况下,您可以手动检查.clang-tidy配置文件。

需要注意的一些重要限制:

  • 您可能暂时不会看到通知,因为我们将使用当前的12.0.0版本作为基准,然后在下一次Clang-Tidy更新期间将其与之进行比较。
  • 这不适用于降级。
  • 这不适用于在CLion中选择的自定义Clang-Tidy二进制文件,仅适用于捆绑的二进制文件。
  • 目前,每次启动新的IDE版本时,通知仅显示一次,但是Clang-Tidy配置设置因项目而异。我们仍在寻找解决方案,欢迎提出想法。

其他改进

其他增强功能包括:

  • 现在, CLion的WSL支持可以正确选择openSUSE-Leap-15-2发行版。
  • 我们继续进行CLion中的MISRA检查,并添加了更多内容。我们很想知道您是否通常在C ++ 11或更高版本中使用MISRA C ++准则。我
  • VCS:Git选项卡已添加到“Search Everywhere”对话框中。在这里,您可以找到提hashes 和 messages, tags, branches
    现在,在“
    Commit ”屏幕上明确显示了两个最受欢迎的按钮CommitCommit and Push”

这些功能是不是很酷?点击“了解更多”免费下载最新版尝试一下,在评论分享你的想法。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表