C++ 專案的 Code Map

如果要為 C++ 專案建立更完整的對應,請在這些專案上設定瀏覽資訊編譯器選項 (/FR)。 否則會出現訊息並提示您設定此選項。 如果選取 [確定] ,則只會為目前的對應設定這個選項。 您可以選擇隱藏所有之後對應的訊息。

當您開啟包含 Visual C++ 專案的方案時,更新 IntelliSense 資料庫可能需要一些時間。 此時,您可能無法建立標頭 (.h or #include) 檔案的 Code Map,直到 IntelliSense 資料庫完成更新。 您可以在 Visual Studio 狀態列中監視更新進度。

  • 若要查看解決方案中所有來源檔案與標頭檔之間的相依性,選取 [架構]>[產生 Include 檔圖形]

    Dependency graph for native code

  • 若要查看目前開啟的檔案與相關原始程式檔和標頭檔之間的相依性,請開啟原始程式檔或標頭檔。 在檔案內的任意處開啟檔案捷徑功能表。 選擇 [產生 Include 檔圖形]

    First-level dependency graph for .h file

C 和 C++ 程式碼的 Code Map 疑難排解

C 和 C++ 程式碼不支援下列項目:

  • 基底類型不會出現在包含父代階層架構的對應中。

  • 大部分的 [顯示] 功能表項目無法供 C 和 C++ 程式碼使用。

建立 C 和 C++ 程式碼的 Code Map 時,可能會發生下列問題:

問題 可能的原因 解決方案
無法產生 Code Map。 方案中沒有成功建立的專案。 修正發生的建置錯誤,然後重新產生對應。
當您嘗試從 [架構]功能表產生 Code Map 時,Visual Studio 會變得沒有回應。 程式資料庫 (.pdb) 檔案可能會損毀。

.pdb 檔案會儲存偵錯資訊,例如類型、方法和原始程式檔資訊。
重建方案後再試一次。
IntelliSense 瀏覽資料庫的某些設定已停用。 某些 IntelliSense 設定可能已在 Visual Studio [選項] 對話方塊中停用。 開啟這些設定來加以啟用。

請參閱選項、文字編輯器、C/C++、進階
[未知方法] 訊息出現在方法節點上。

發生這個問題是因為無法解析方法的名稱。
二進位檔可能沒有基底重新配置表格。 在連結器中開啟 /FIXED:NO 選項。
程式資料庫 (.pdb) 檔案可能無法建置。

.pdb 檔案會儲存偵錯資訊,例如類型、方法和原始程式檔資訊。
在連結器中開啟 /DEBUG 選項。
無法在預期的位置中開啟或找到 .pdb 檔案。 請確定預期的位置中有 .pdb 檔案存在。
已從 .pdb 檔案中移除偵錯資訊。 如果在連結器中使用 /PDBSTRIPPED 選項,請改為包含完整的 .pdb 檔案。
呼叫端不是函式,而且為二進位檔案中的 Thunk 或資料區段中的指標。 當呼叫端為 Thunk 時,請嘗試使用 _declspec(dllimport) 來避免 Thunk。