ReSharper C++ 2026.1 では起動時間が短縮され、メモリ使用量が削減されました。 このリリースでは、C++26 の #embed ディレクティブとその他の新しい言語機能が新たにサポートされています。 コーディング支援の改善には、C++20 モジュールの自動インポートと新しい後置補完シナリオが含まれます。 Unreal Engine 開発者は、ブループリントの統合の改善と次期 Unreal Engine 5.8 の互換性に関する修正を利用できます。
ReSharper C++ 2026.1 では IDE を使用するあらゆる場面でパフォーマンスが大幅に最適化され、大規模な Unreal Engine プロジェクトの需要に特化した調整が行われています。 当社が Out-of-Process(アウトプロセス)モードで実施した Unreal Engine 向けの Lyra サンプルプロジェクトに対する評価では、以下の改善が見られました。
ReSharper C++ で C++26 と C23 で導入された #embed プリプロセッサディレクティブがサポートされるようになりました。 このディレクティブを使用すると、バイナリリソースファイルの内容をソースコードに直接埋め込めるため、外部のツールやコードの生成が不要になります。
このリリースでは、以下の 2 つの言語機能のサポートも新たに追加されています。
_Countof 演算子: ReSharper C++ で配列の要素数を返す C2Y(C の次期標準)の _Countof 演算子が認識されるようになりました。 bfloat16_t、float16_t、および float128_t 浮動小数点型がサポートされるようになりました。
ReSharper C++ 2026.1 では、コンパイラー固有の拡張機能との互換性が改善されています。
_Nullable/_Nonnull 修飾子: パーサーが Clang のポインター null 許容性修飾子を認識するようになりました。
ReSharper C++ で新たに導入された C++20 モジュールの自動インポートのサポートにより、認知的負荷を抑制できます。 エクスポートされたシンボルを使用する際に対応する import 宣言がない場合、IDE がその宣言を自動的に挿入するスマートな提案を提供するようになりました。 現在、自動インポートはプライマリモジュールインターフェースユニットとモジュールパーティションから直接エクスポートされたシンボルのみをサポートしています。
後置補完が拡張され、以下の状況に対応できるようになりました。
int、bool、float などのプリミティブ型の式も処理するようになりました。 42.cos と入力すると cos(42) に展開されるようになりました。 _ を入力すると、ReSharper C++ が現在のスコープ内で可視の一致する operator"" 接尾辞を提案します。
以下の自動インデントに関する 2 つの改善により、より円滑に編集できるようになりました。
class [[deprecated]] MyClass {} のように)属性がある場合でも、適切なインデントでカーソルが正しく配置されるようになりました。 extern ブロック内の自動インデントで Indent linkage specification block members(リンケージ指定子ブロックメンバーをインデントする)書式設定が考慮されるようになりました。
ReSharper C++ 2026.1 では、以下のようにブループリントのサポートが改善されています。
BlueprintPure: Code Vision が BlueprintCallable に加えて、BlueprintPure 指定子が付いた関数を認識できるようになりました。 BlueprintNativeEvent および BlueprintImplementableEvent 関数の実装を検出できるようになりました。 BlueprintAssignable デリゲートプロパティのブループリント側のバインディングを検索できるようになりました。
ReSharper C++ で Unreal Engine プラグインのインデックス作成がデフォルトで行われるようになりました。 Unreal Engine プロジェクトでプラグインが使用されるケースが増えており、最近はパフォーマンスが改善されたため、プラグインのインデックスをデフォルトで作成することによってコード解析と移動操作をあらかじめ改善するようにしています。 Settings(設定)の ReSharper | Options(オプション)| Code Editing(コード編集)| C/C++ | Unreal Engine ページで以前の動作に戻すことができます。
ReSharper C++ では、次期リリースの Unreal Engine 5.8 の UnrealHeaderTool の変更もサポートされるようになりました。 具体的にはコード解析で DECLARE_DYNAMIC_MULTICAST_DELEGATE マクロによる誤検出エラーが発生しなくなっています。
Unreal Engine 開発向けのスタンドアロン型クロスプラットフォーム IDE にご興味がありましたら、Rider をぜひご検討ください。 Rider と ReSharper C++ での Unreal Engine のサポートは同等であるため、Rider 2026.1 アップデートと同じ改善を期待できます。
ReSharper C++ 2026.1 ではバンドルの Clang-Tidy バイナリが更新されており、最新のチェックと LLVM 22 リリースの機能強化が反映されています。
新しいインスペクションでは、対応するメンバーが構造体での宣言順序と異なる順序で出現している指示付きイニシャライザーが検出されます。 C++20 では指示付きイニシャライザーが宣言順序に従っている必要があるため、イニシャライザーの順序が異なっている場合にコンパイルエラーが発生してしまいます。 このリリースの ReSharper C++ では、そのような場合にフラグを立て、イニシャライザーリストの順序を構造体の定義に合わせて自動的に変更するクイックフィックスが提供されるようになりました。
別の新しいインスペクションでは、関数のアクセスレベル(public、protected、または private)が基底クラスでオーバーライドしている仮想関数と異なる場合に警告が表示されます。 C++ ではオーバーライドのアクセスレベルの変更が許可されていますが、それは往々にして意図された変更ではなく、予期しない動作を引き起こす原因になっています。 このインスペクションにより、そのような分かりにくい不整合を検出できます。
このリリースでは、Unused symbol(未使用のシンボル)インスペクションの適用対象が .cpp ソースファイルで定義されたクラスメンバーにも拡張されました。 従来、このようなメンバーは外部から可視であることを前提に Unused symbol(未使用のシンボル)解析から除外されていました。 このリリースでは、static 関数や匿名の名前空間メンバーと同じように解析されるようになっています。
C++ ファイルでのガターマークを改良し、より容易に複雑なコードベース内を移動して理解できるようにしました。
Go to Declaration(宣言に移動)とその他の移動アクションが型名に加えて、波括弧の初期化式( MyStruct { 1 } など)の開始括弧で動作するようになりました。
ReSharper C++ のツールチップを Visual Studio 2026 で利用できるようになり、初期の Visual Studio 2026 互換性リリースに不足していたツールチップのサポートが復元されました。 ツールチップの表示も改善されています。シンボルの型を区別しやすいアイコンになり、テーマ機能のサポートが強化されました。
ReSharper の複数のエディター UI 要素を更新し、Visual Studio のモダンな外観により適合させました。
デザインを刷新することで、エディター組み込みのコード補完 UI がよりすっきりとした一貫性のある外観になりました。
パラメーター情報ポップアップ、ツールチップ、その他のエディターのポップアップを含む多数の関連 UI コンポーネントがモダン化され、古いビジュアル要素が置き換えられ、複数のテーマや DPI の設定で見た目が改善されました。
最新の UI では Visual Studio のエディターの拡大・縮小機能がサポートされ、拡大率が変更されても補完リストとパラメーター情報が正しく拡大されるようになっています。
ReSharper C++ 2026.1 では、以下のようなプロジェクトモデルに関する複数の課題が解決されています。
.tlb)を解決できるようになりました。 このリリースで導入されたその他の変更点については、「ReSharper の新機能」ページをご覧ください。