C++ プロジェクトのコード マップ
C++ プロジェクトのより完全なマップを作成する場合は、そのプロジェクトに対してブラウザー情報のコンパイラ オプション (/FR) を設定します。 設定されていない場合は、メッセージが表示され、このオプションを設定することが求められます。 [OK]を選択した場合、このオプションは現在のマップに対してのみ設定されます。 以後のすべてのマップについて、メッセージを非表示にするように選択できます。
Visual C++ のプロジェクトを含むソリューションを開くときは、IntelliSense データベースの更新に時間がかかる場合があります。 この間は、IntelliSense データベースの更新が終了するまで、ヘッダー ( .h または #include
) ファイルのコード マップを生成できない場合があります。 更新の進行状況は、Visual Studio のステータス バーで監視できます。
ソリューションのすべてのソース ファイルとヘッダー ファイル間の依存関係を表示するには、 [アーキテクチャ] 、 [インクルード ファイルのグラフを生成] の順に選択します。
現在開いているファイルと関連するソース ファイルおよびヘッダー ファイルとの間の依存関係を表示するには、そのソース ファイルまたはヘッダー ファイルを開きます。 ファイル内の任意の場所でファイル ショートカット メニューを開きます。 [インクルード ファイルのグラフを生成]をクリックします。
C および C++ コードのコード マップのトラブルシューティング
これらの項目は C および C++ コードではサポートされていません。
基本型は、親階層を含むマップには表示されません。
表示 メニューのほとんどの項目は、C および C++ コードでは使用できません。
C および C++ のコードのコード マップを生成するときに、次の問題が発生する場合があります。
問題点 | 考えられる原因 | 解像度 |
---|---|---|
コード マップを生成できませんでした。 | ソリューション内のプロジェクトが正常にビルドされませんでした。 | 発生したビルド エラーを修正してから、マップを再生成します。 |
[アーキテクチャ] メニューからコード マップを生成しようとすると、Visual Studio が応答しなくなる。 | プログラム データベース (.pdb) ファイルが壊れている可能性があります。 .pdb ファイルには、型、メソッド、ソース ファイル情報などのデバッグ情報が格納されます。 |
ソリューションをリビルドしてから、もう一度実行します。 |
IntelliSense 参照データベースの特定の設定が無効になる。 | IntelliSense の特定の設定が、Visual Studio の [オプション] ダイアログ ボックスで無効になっている可能性があります。 | 設定をオンにして有効にします。 「[オプション]、[テキスト エディター]、[C/C++]、[詳細]」を参照してください。 |
" 不明なメソッド " という内容のメッセージがメソッド ノードで表示される。 この問題は、メソッドの名前を解決できないために発生します。 |
バイナリ ファイルにベース再配置テーブルがない可能性があります。 | リンカーで /FIXED:NO オプションをオンにします。 |
プログラム データベース (.pdb) ファイルがビルドされていない可能性があります。 .pdb ファイルには、型、メソッド、ソース ファイル情報などのデバッグ情報が格納されます。 |
リンカーで /DEBUG オプションをオンにします。 | |
予想される場所で .pdb ファイルを開くことができないか、ファイルが見つかりません。 | .pdb ファイルが予想される場所にあることを確認します。 | |
デバッグ情報が .pdb ファイルから取り除かれています。 | /PDBSTRIPPED オプションをリンカーで使用した場合は、代わりに完全な .pdb ファイルを使用します。 | |
呼び出し元が関数ではなく、バイナリ ファイル内のサンクまたはデータ セクション内のポインターです。 | 呼び出し元がサンクの場合は、 _declspec(dllimport) を使用してサンクの回避を試みます。 |