ReSharper C++
The Visual Studio Extension for C++ Development
ReSharper C++ 2022.2: Blueprints Support and Faster Unreal Engine Indexing
ReSharper C++ 2022.2 is now available!
Update to this latest version, or start a free 30-day trial today! The brand new build is available on our website, and all of our tools for Visual Studio can be downloaded via the Toolbox App.
Check out the highlights and visit our What’s New page for more details:
- Blueprints support: new inlay hints and inspections.
- Performance boost for Unreal Engine indexing.
- C++ support: better handling of
emplace
– andmake
-like function calls, as well as new checks from Clang 14. - Unit Testing: support for Unreal Engine Spec tests and updates for Boost.
- Improved error rendering and other coding assistance updates.
Blueprints support
Blueprint is a gameplay visual scripting system in Unreal Engine. ReSharper C++ now reads Blueprints and introduces a new type of hint to help you see how Blueprint designers use and extend the baseline system implemented in the C++ part of your Unreal Engine game. With the new Blueprint hints, you’ll be aware of derived Blueprint classes, UFunction
implementations, and the write access to and default values of UProperties
.
We’ve also introduced two inspections to let you know if there are inconsistencies between the Blueprint-specific function specifiers used in the code and the Blueprints themselves:
- BlueprintCallable function is never used in Blueprint or C++ code.
- BlueprintImplementableEvent function is not implemented in any blueprint.
Check out this blog post for more details about the new Blueprint-specific hints and inspections.
Faster indexing
We’ve significantly improved the indexing speed of Unreal Engine code. As a result of caching precompiled headers, ReSharper C++ now indexes the engine code up to twice as fast as before. The measurements on different versions of Unreal Engine show a 45–48% improvement:
i9-11950H (2.6GHz), 32 GB RAM
Visual Studio 2022
ReSharper C++ 2022.1.2 vs ReSharper C++ 2022.2
By default the precompiled header files are cached during initial indexing, but you can configure this behavior on the Code Editing | C++ | Unreal Engine page of ReSharper settings.
C++ support
ReSharper C++ is now better at handling emplace
– and make
-like function calls, improving search and navigation features, and adding support for parameter name hints.
Unreal Engine containers in Emplace
calls also benefit from this update. You’ll now get parameter name hints and warnings about invalid arguments.
We’ve also updated the bundled Clang-Tidy binary to Clang 14, adding new checks from the latest LLVM release.
Unit Testing
ReSharper C++ now supports Spec tests from the Unreal Engine automation testing framework. If you have a set of tests defined in the Define
method after the DEFINE_SPEC
macro or the BEGIN_DEFINE_SPEC
/END_DEFINE_SPEC
macros, ReSharper C++ will successfully discover them.
We’ve also updated Boost.Test support and fixed issues with data-driven test cases.
Coding assistance
We’ve improved the readability of error tooltips by adding syntax highlighting for more cases. The error highlighting range is now also more precise. For example, when getting an aggregate initialization warning, you can now tell at a glance exactly which subobject caused the initialization failure.
For Unreal Engine projects, the code completion list now includes Widget metadata specifiers.
We’ve added one more easy way to generate documentation comments. You can now create a documentation stub by pressing Enter
inside a /**/
comment before the entity you wish to document.
ReSharper C++ 2022.2 also introduces support for the Public Include Directories and All Header Files are Public project properties.
Those are all the highlights for today! The full list of fixed issues is available in our issue tracker.
Take a look at What’s New in ReSharper to learn about other changes introduced in this release. For example, you can now remove temporary files generated by ReSharper while it is working on your code (ReSharper | Options | Environment | Disk Cleanup).
Give the new release a try and let us know what you think. We love hearing from you!
Your ReSharper C++ team
JetBrains
The Drive to Develop