クイック スタート: C/C++ のコード分析
C または C++ コード実行中のコードの分析することで、アプリケーションの品質を定期的にアップグレードできます。これは、推奨されるプログラミング方法に関する一般的な問題、テストによって検出しにくい違反や障害の検出することができます。コード分析の警告は、のエラーと警告にコード分析が、捜したり、コードを使用する、または他のユーザーの懸案事項を作成できる特定のコード パターンは異なります。
要件
- Visual Studio Ultimate, Visual Studio Premium, Visual Studio Professional
このトピックの内容
プロジェクトの規則セットを構成します。
**[ソリューション エクスプローラー]では、プロジェクト名のショートカット メニューを開き、[プロパティ]**を選択します。
次の手順は省略可能です:
[構成] と [プラットフォーム] の一覧で、ビルド構成を選択し、プラットフォームを対象とします。
既定では、外部ツールによって自動的に生成されたコードからの警告はコード分析では報告されません。生成されたコードからの警告を表示するには、[生成されたコードから結果を表示しない] チェック ボックスをオフにします。
[!メモ]
コード分析のエラーおよび警告がフォームやテンプレートで表示される場合、このオプションを使用しても、生成されたコードからこのエラーおよび警告の出力は抑制されません。フォームまたはテンプレートのソース コードは表示することも保持することもできます。
プロジェクトが選択された構成を使用してビルドするたびにコード分析を実行するには、[ビルド時に C/C++ のコード分析を有効化] のチェック ボックスをオンにします。また [分析] のメニューを開いて、コード分析を実行します *** [プロジェクト名]を選択して、コード分析を手動で実行することもできます。
[この規則セットを実行] ボックスの一覧で、次のいずれかの操作を行います。
使用する規則セットを選択します。
設定一覧にない既存のカスタム規則セットを指定するには、を選択 <Browse...> します。
カスタム規則セットを定義します。
詳細については、「カスタム コード分析規則セットの作成」を参照してください。
標準 C/C++ の規則セット
Visual Studio は、ネイティブ コード用の 2 種類の標準的な一連の規則が含まれます:
規則セット |
説明 |
---|---|
Microsoft のネイティブの最小推奨規則 |
この規則セットは、セキュリティ ホール、アプリケーション クラッシュを含む、ネイティブ コードに含まれる最も重要な問題に関するものです。ネイティブ プロジェクトにカスタムの規則セットを作成する場合は、必ずこの規則セットを含める必要があります。 |
Microsoft のネイティブの推奨規則 |
この規則セットには問題の広範囲について説明します。これは、Microsoft のネイティブの最小推奨規則にすべての規則が含まれます。 |
コード分析の実行
プロジェクトのプロパティ ページの [コード分析] ページで、プロジェクトをビルドするたびにコード分析を実行するように構成できます。また、コード分析を手動で実行することもできます。
ソリューションのコード分析を実行する:
- [ビルド] で、メニューの **[ソリューションでコード分析を実行]**を選択します。
プロジェクトのコード分析を実行する:
ソリューション エクスプローラーで、プロジェクトの名前を選択します。
[ビルド] で、メニューの コード分析の実行 *** [プロジェクト名]を選択します。
プロジェクトまたはソリューションとコード分析はコンパイルします。コード分析の結果はウィンドウに表示されます。
コード分析の警告を分析し、解決します。
特定の警告を分析するには、ウィンドウのコード分析の警告のタイトルを選択します。警告は出力に関する追加情報を表示するために配置します。可能な場合、コード分析は行番号を表示し、警告の原因分析の論理。懸案事項への解決法を含む警告に関する詳細については、メッセージの MSDN ライブラリのヘルプ トピックを表示する警告 ID を選択します。
警告を配置するときに、警告の原因となったコード行は、Visual Studio コード エディターで強調表示されます。
問題を把握できたら、コードで解決できます。次に、コード分析の警告がウィンドウに表示されないこと、および、の修正を新しい警告を上げなかったことを確認するために、コード分析を再度実行します。
ヒント |
---|
コード分析のウィンドウからコード分析を再実行できます。[分析] のボタンを選択し、分析の範囲を選択します。ソリューション全体または選択したプロジェクトの分析を再実行できます。 |
コード分析の警告の抑制
コード分析の警告を修正する可能性もありますがあります。問題がコードの実際の実装で行われます。この警告を解決できる可能性に関連して再たいそうコードを必要とすると判断する場合もあります。または警告で使用される分析が特定のコンテキストに対して不適切と思い込んで場合があります。コード分析のウィンドウに表示されないように個々の警告を抑制できます。
警告を抑制するには:
詳細情報が表示されない場合は、展開する警告のタイトルを選択します。
警告の下部に [アクション] のリンクを選択します。
[メッセージの非表示] を選択し、**[ソース内]**を選択します。
コード行の警告を抑制するメッセージを抑制して #pragma warning (disable:WarningId) を挿入します。
コード分析の警告の作業項目の作成
Visual Studio 内からバグを記録するために作業項目トラッキング機能を使用できます。この機能を使用するには、Team Foundation Server のインスタンスに接続する必要があります。
一つ以上の C/C++ の作業項目を作成するには、警告がコード。
コード分析の警告ウィンドウで、を展開し、をクリックします。
警告のショートカット メニューで、**[作業項目の生成]**を選択し、作業項目の種類を選択します。
Visual Studio は、選択した警告の単一の作業項目を作成し、IDE のドキュメント ウィンドウの作業項目を表示します。
追加情報を追加し、**[作業項目の保存]**を選択します。
コード分析の結果を検索、フィルター処理
警告メッセージの長い一覧を検索し、複数のプロジェクトから成るソリューションの警告をフィルター処理できます。
警告をタイトルまたは警告 ID に基づいてフィルター処理するには: [フィルター] のテキスト ボックスにキーワードを入力します。
警告をプロジェクトに基づいてフィルター処理するには: 複数のプロジェクトから成るソリューションでは、コード分析のウィンドウの右上でリストで一つ以上のプロジェクトを選択します。すべての警告を表示するためのソリューションの名前を選択します。
警告を深刻度に基づいてフィルター処理するには: 既定では、コード分析のメッセージが **[警告]**の重大度レベルが割り当てられます。カスタム規則セットの [エラー] 一つ以上のメッセージの重大度レベルを割り当てることができます。それぞれの重要度を割り当てたメッセージのみを表示するに [警告] か [エラー] を選択します。すべてのメッセージを表示するに すべて を選択します。