ReSharper C ++に会う

ReSharperは、その存在から10年以上、.NET開発者に焦点を合わせてきました。これは、Visual Studioのプラグインにとって驚くべきことではありません。 2年前、エイプリルフールのジョークが成功したこともあり、ReSharperでC ++をサポートしました。つい最近、 ReSharper C ++の最初の公式リリースがリリースされました-Visual StudioのC / C ++開発者専用の新製品です。 (C / C ++でのクロスプラットフォーム開発のためのCLionのリリースを待っている人は、もう少し忍耐が必要です。)



ReSharper C ++はどのように役立ちますか? 製品の主な機能を分析します。











静的コード分析



肯定的なプロジェクトでVisual Studioを開くとすぐに、ReSharper C ++はプロジェクトの分析を開始し、見つかった問題の修正を提案し、これらまたはそれらの改善を推奨します。 たとえば、タイトルを書き込まずにタイプを使用する場合、ReSharper C ++はこれを行うようプロンプトを表示します。

















関数プロトタイプがあるが、その定義が十分でない場合、ReSharper C ++は同じまたは別のファイルで関数本体を生成することを提案します。

















printf()



関数を使用する場合、ReSharper C ++はフォーマット引数をチェックし、問題が見つかった場合は修正を提案します。

















マクロとテンプレート



ReSharper C ++はすべてのマクロを完全に理解しているため、前処理後に取得されるコードの分析を実行します。 これにより、多くのユニークな機能が提供されます。たとえば、コード内でマクロを直接「デプロイ」できます。

















ReSharperテンプレートによる要因実装の場合、C ++はこのテンプレートを使用して記述されたstatic_assert



すぐにチェックできます。

















ナビゲーションと検索



ReSharper C ++を使用すると、大規模なプロジェクトをすばやく移動して、プロジェクト内の目的のコードを検索できます。 サポートされているナビゲーション機能の一部を次に示します。











ReSharper C ++で特定の文字のすべての出現を検索するために、プレビュー、グループ化、およびフィルタリングの機能を持つFind Usagesメカニズムがあります。









Alt + Enterを押すと開くコンテキストメニューから多くのナビゲーションコマンドを使用できることに注意してください

















ReSharper C ++には、大規模で複雑なプロジェクトのナビゲーション用のいくつかのウィンドウも含まれています。 これらのウィンドウの1つはファイル構造と呼ばれます。現在のファイルの構造をすばやくナビゲートできます。











別のウィンドウはInheritance Hierarchyと呼ばれ、ツリー型の継承階層が表示されます。

















ナビゲーショントピックを締めくくると、クラス要素をナビゲートするためのコマンド( 次へ/前のメンバーに移動 )とファイル内で見つかったエラー( 次へ/前の問題に移動 )があります。









テンプレートとコード生成



コードとテンプレートを生成するシステムをC ++に適合させました。 つまり、ReSharper C ++では、主要なReSharperメカニズムのユーザーになじみのある次のメカニズムがサポートされています。











テンプレートに加えて、ReSharper C ++には、[ 生成 ]メニューでコードを生成するための通常のメカニズムがあります。

















リファクタリング



コードリファクタリング機能は、ReSharper名刺の一種です。 ReSharper C ++に既にあるリファクタリングを次に示します。













おわりに



上記の機能の動作を示すビデオを次に示します。













ReSharper C ++を使用するには、 個別のライセンスまたはReSharper Ultimateライセンスが必要です。









ReSharper C ++は、 個別に、または完全なReSharper Ultimateインストーラーの一部としてダウンロードできます。 どちらの場合も、30日間の試用期間が適用されます。








All Articles