ReSharper C++ 2025.2 添加了对最近完成的 C++26 标准的初始语言功能集的支持。 现在,借助完全可用的编码辅助功能,您可以轻松编辑 #if 语句注释掉的块内的代码,无需切换有效构建配置。 此版本还带来了备受期待的 Out-of-Process(进程外)模式的首个公共预览版,该模式将 ReSharper 的大部分工作转移到单独的进程中。
ReSharper C++ 2025.2 开始支持最近完成的 C++26 语言标准。 最新版本包括对以下新 C++ 功能的支持:
_ 命名变量以隐式应用 [[maybe_unused]] 特性。= delete("reason"):向已删除的函数添加可选消息,以更好地进行错误诊断。
对于 C 开发者,ReSharper C++ 添加了对 C11 _Atomic 类型的支持,以及对 C23 标准中 _BitInt(N) 和十进制浮点类型后缀的支持。
如果您为多个平台进行开发或者编写复杂的着色器,您应当知道在当前构建配置中编辑停用代码有多么麻烦。 借助 ReSharper C++ 2025.2,这种麻烦将会成为过去。
我们从根本上改进了 ReSharper 处理被 #if 语句注释掉的块内的代码的方式。 现在,全套编码辅助功能可在停用预处理程序块中使用。 跨不同平台重构、浏览和编辑代码或构建配置,无需停止和切换项目设置。
我们很高兴地宣布,ReSharper 2025.2 成为首个支持以进程外模式在 Microsoft Visual Studio 中运行 ReSharper 的稳定版本。 这一期盼已久的架构更改为今后进一步提升稳定性和性能奠定了基础,因为这项更改将 ReSharper 进程与 Visual Studio 进程分离。
要切换到 Out-of-Process(进程外)模式,请前往 ReSharper 的 Options | Environment | Products & Features(选项 | 环境 | 产品与功能),并选择 Run ReSharper in separate process(在单独的进程中运行 ReSharper)选项。 点击 Save and restart(保存并重启)按钮,以应用更改并重新初始化 ReSharper,而无需重启 IDE。
现在,可以使用新的颜色类别高亮显示引用全局常量的标识符,使它们在视觉上与普通变量区分开来。
ReSharper C++ 2025.2 理解 OpenMP #pragma 指令中的变量引用。 这意味着这些引用现在受导航功能支持,可以通过 Find Usages(查找用法)检测,并在 Rename(重命名)重构期间更新。
在宏实参内的函数调用中调用时,Parameter info(形参信息)现在可以正确显示函数签名。
关于 typename 关键字用法的检查已获得更新,支持 C++20 标准中的更改。 此外,代码生成和文档操作现在可以正确处理 C++23 推断的 this 形参。
您现在可以自动对源文件中的定义进行排序,以匹配头文件中的声明顺序。 对于一次性排序,对特定函数、文件或整个项目使用新的 Sort definitions by the order of declaration(按声明顺序对定义排序)上下文操作。 对于持续执行,请启用相应的语法样式设置。 然后,ReSharper C++ 会在 Code Cleanup(代码清理)期间警告不匹配情况,并带有检查和排序定义。
我们通过两项更新增强了 C++ 命名检查。 首先,您现在可以为包含 lambda 的变量定义特定的命名样式。 其次,类模板实参推导指南现在可以根据您为类和结构体设置的命名规则进行正确验证。
借助新的格式化程序设置,您可以在构造函数初始值设定项中配置冒号前的空格。
Find Usages(查找用法)窗口现在将非常量成员函数的调用分类为读写用法,帮助您分离只读操作和修改操作。
为了提高可读性,File Structure(文件结构)窗口为关键字和标识符添加了语法高亮显示。
现在,您可以按住 Ctrl 并点击 virtual 关键字来快速导航到重写函数,类似于按住 Ctrl 并点击 override 跳转到基函数。
除了数组之外,元素索引提示现在也可用于 std::initializer_list 类型的实参。 您可以在 ReSharper | Options | Environment | Inlay Hints | C/C++ | Aggregate Initialization(ReSharper | 选项 | 环境 | 嵌入提示 | C/C++ | 聚合初始化)设置页面上配置它们。
就地重构现在通过嵌入提示出现,使其更加醒目并与 JetBrains IDE 保持一致。 您可以在 ReSharper | Options | Environment | Editor | Appearance(ReSharper | 选项 | 环境 | 编辑器 | 外观)下配置它们的外观。
ReSharper C++ 对显示代码在蓝图内部使用位置的支持已扩展至支持实现 UINTERFACE 的蓝图。
我们为 BlueprintGetter 和 BlueprintSetter 元数据中的方法名称添加了代码补全。
如果您对用于 Unreal Engine 开发的独立跨平台 IDE 感兴趣,请选择 Rider。 Rider 中的 Unreal Engine 支持与 ReSharper C++ 保持一致,您可以在 Rider 2025.2 更新中期待相同改进。
ReSharper C++ 现在与 Visual Studio 的原生步进筛选集成。 因此,C++ 调试器现在将遵循您在 *.natstepfilter 配置文件中定义的步进规则。
现在,ReSharper C++ 在 Visual Studio 2022 中默认使用 64 位版本的 MSBuild 读取项目模型。 这解决了加载大量项目时的可靠性问题,特别是在使用 Unreal Engine 5.6 的解决方案中。
您现在可以在 CMake 和 Open Folder 项目的任何构建目标未包含的源文件中使用 ReSharper C++ 的功能。 出于性能考虑,这些文件仍然被排除在代码索引之外。
查看 ReSharper 最新变化页面,了解此版本中引入的所有其他更改。