Unreal Engine

ReSharper C++ 引入了针对特定蓝图的内嵌提示,这样一来,您可以查看代码背后的整体情况:

  • 查看派生蓝图类和所有继承者的列表。
  • 发现 UFunction 在蓝图中的实现并搜索所有此类情况。
  • 快速检查 UProperty 的状态,包括其是否已被重写以及在蓝图文件中设置了什么值。

我们还引入了两项检查,用于显示代码中使用的针对特定蓝图的函数说明符与蓝图本身之间是否存在不一致:

  • 带有 BlueprintCallable 函数说明符的 UFunction 应该在蓝图中使用,但没有找到用法。
  • 带有 BlueprintImplementableEvent 函数说明符的 UFunction 应该在蓝图中实现,但没有找到实现。

我们显著提高了 Unreal Engine 项目的索引编制速度。 缓存预编译头后,ReSharper C++ 现在的代码库索引速度最高可达先前的两倍

此实验性性能提升目前仅适用于 Visual Studio 2022。

ReSharper C++ 现已支持来自 Unreal Engine 自动化测试框架的规范测试。 在 DEFINE_SPEC 宏或 BEGIN_DEFINE_SPEC/END_DEFINE_SPEC 宏之后的 Define 方法中定义一组测试后,ReSharper C++ 能够成功发现它们。 在 Unit Test Sessions(单元测试会话)窗口中,您可以检查测试结果,重新运行失败测试、所有测试或特定测试。

代码补全列表现在包括 Widgets 元数据说明符。

ReSharper C++ 现在能够在 Emplace 调用中正确处理 Unreal Engine 容器,带来改进的搜索和导航功能、形参名称提示以及无效实参警告。

如果您对用于 Unreal Engine 开发的独立跨平台 IDE 感兴趣,请选择 Rider。 Rider 中的 Unreal Engine 支持与 ReSharper C++ 保持一致,您可以期待 Rider 2022.2 更新中的相同改进。

支持 C++

我们通过添加语法高亮显示提升了错误工具提示的可读性。 错误高亮显示范围也更加精确。 例如,出现聚合初始化警告时,您可以直接找出导致初始化失败的子对象。

形参名称提示现在支持类似于 makeemplace 的函数调用。

捆绑的 Clang-Tidy 二进制文件已更新到 Clang 14,新增了最新 LLVM 版本中的新检查。

ReSharper C++ 2022.2 还为 Boost 测试带来更新,并引入了对 Public Include DirectoriesAll Header Files are Public 项目属性的支持。

查看 ReSharper 最新变化,了解此版本中引入的其他更改。 例如,您现在可以移除 ReSharper 在处理代码时生成的临时文件(ReSharper | Options | Environment | Disk Cleanup(ReSharper | 选项 | 环境 | 磁盘清理))。