共用方式為


在 Visual Studio 中巡覽 C++ 程式碼

Visual Studio 提供一套工具,可讓您快速且有效率地巡覽程式碼基底。

開啟包含的檔案

以滑鼠右鍵按一下 #include 指示詞,然後選取 [前往文件]。 或者,將游標移到該行上方並選取 F12 以開啟該檔案。

部分 include 語句內容中 C 加上 Go 待辦事項 cument 選單選項的螢幕快照。

切換標頭/程式碼檔

您可以在標頭檔案與其對應之來源檔案之間切換。 以滑鼠右鍵按一下您檔案中的任一處,然後選取 [切換標頭/程式碼檔]。 或者,您可以選取 Ctrl+KCtrl+O

移至定義/宣告

您可以在編輯器中以滑鼠右鍵按下並選取 [移至定義],或選取 F12,瀏覽至程式碼項目的定義。 您可以同樣地以滑鼠右鍵按一下以開啟操作功能表或選取 Ctrl + F12 來巡覽至宣告。

當您以滑鼠右鍵按下程式代碼項目時出現的選項螢幕快照。包含 [移至定義]、[查看定義] 和 [移至宣告]。

Go To 是指一組導覽功能,每個功能都會根據您指定的篩選來提供特定結果。

您可以使用 Ctrl+, 開啟 [移至]。 此動作會在您正在編輯的文件上建立搜尋方塊。

當您開啟 [移至] 時所顯示的搜尋方塊螢幕快照。搜尋字詞有一個文本框,並篩選類型、最近的檔案等。

[移至] 包含這些搜尋篩選條件:

  • 移至行Ctrl+G):快速跳到您目前檔中的不同行。
  • 移至 [全部 ] (Ctrl+,) 或 [Ctrl+T]:搜尋結果包含下列所有專案。
  • 移至 [檔案 ] (Ctrl 1,F):搜尋方案中的檔案。
  • 移至類型Ctrl 1, T): 搜尋結果包括:
    • 類別、結構與列舉。
    • 介面和委派 (僅限受控程式碼)。
  • 移至成員Ctrl 1,M):搜尋結果包括:
    • 全域變數和全域函式。
    • 類別成員變數和成員函式。
    • 常數。
    • 列舉項目。
    • 屬性和事件。
  • 移至符號Ctrl 1, S): 搜尋結果包括:
    • 移至類型和移至成員的結果。
    • 所有剩餘C++語言建構,其中包括巨集。

當您第一次使用 Ctrl + 叫用 [移至] 時,會啟用 [移至全部] (對搜尋結果沒有篩選條件)。 您接著可以使用搜尋方塊附近的按鈕來選取您要的篩選。 您可以使用特定篩選條件對應的鍵盤快速鍵來叫用它。 這樣做會開啟 [移至] 搜尋方塊,並預先選取該篩選條件。 所有鍵盤快速鍵都可以進行設定。

若要套用文字篩選,請使用篩選條件的對應字元後面接著空格來啟動搜尋查詢。 (移至行 可以選擇性地省略空格。這些文字篩選器可供使用:

  • 移至全部:(無文字篩選條件)
  • 移至行號::
  • 移至檔案:f
  • 移至型別:t
  • 移至成員:m
  • 移至符號:#

下列範例示範使用 "f" 篩選條件的「移至檔案」作業結果:

移至檔案結果的螢幕快照。使用者輸入 『f str』 並顯示 string_utils.cpp 和 string_utils.h,因為它們在名稱中包含 str。

若要查看文字篩選條件的清單,請鍵入 ? 後面接著空格。 您也可以使用 [編輯] 功能表存取 [移至] 命令。 這是提醒您自己主要 [移至] 鍵盤快速鍵的另一種方法。

[移至] 功能表的螢幕快照,其中包含 [移至行] (Ctrl + G)、[移至檔案] (Ctrl + 1、Ctrl + F)等選項。

尋找或在檔案中尋找

您可以使用 [尋找] \(Ctrl+F\) 或 [在檔案中尋找] \(Ctrl+Shift+F\) 執行文字搜尋,以尋找您解決方案中的項目。

[尋找] 範圍可以設定為選取範圍、目前文件、所有開啟的文件、目前專案,或整個解決方案。 您可以使用規則運算式和純文字。 它也會自動在 IDE 中醒目提示所有相符項目。

[尋找] 對話框的螢幕快照。使用者已搜尋通道。檔案中的黃色醒目提示會顯示找到 Channel 的所有位置。

[在檔案中尋找] 是 [尋找] 的更強大版本,它會在 [尋找結果] 視窗中顯示結果。 您可以搜尋外部程式碼相依性、依檔案類型篩選等。

[尋找和取代] 對話框的螢幕快照。已選取 [在檔案中尋找] 頁面。選項會顯示成對大小寫、整字等等。

您可以將 [在檔案中尋找] 結果組織成兩個視窗。 您可以同時附加多個搜尋結果。 選取結果以移至檔案中的該位置。

顯示 [在檔案中尋找] 搜尋結果的螢幕快照,其中列出包含符合搜尋字串的文字和每個相符專案的摘錄的檔案。

如需詳細資訊,請參閱 Visual Studio 文件中的<在檔案中尋找>

尋找所有參考

若要在程式碼基底中尋找符號的所有使用方式,請將插入號放在符號處或符號之後,然後以滑鼠右鍵按一下並選取 [尋找所有參考]。 您可以用許多不同的方式篩選、排序或分組結果。 結果會以累加方式填入。 它們會分類為讀取或寫入,協助您了解解決方案中的是什麼,而非系統標頭或其他程式庫。

[尋找所有參考結果] 的螢幕快照,其中顯示找到符號所在的行、它所在的檔案和專案等等。

您可以依下列類別將結果分組:

  • 專案接著定義
  • 僅定義
  • 定義接著專案
  • 定義接著路徑
  • 定義、專案接著路徑

篩選結果

若要篩選結果,請暫留在資料行,然後選取快顯的篩選圖示。 您可以從第一個資料行篩選結果,以隱藏您可能不想看到的字串和註解參考等。

篩選選項的螢幕快照。包含 Confirmed、Disconfirmed、In comment 和 unprocessed。每個都會顯示該類別套用多少結果。

  • 已確認的結果:所搜尋符號的實際程式代碼參考。 例如,搜尋稱為 Size 的成員函式呼叫會傳回對 Size 的所有參考,這些參考符合定義 Size 的類別範圍。

  • 不確認的結果:此篩選預設為關閉,因為它會顯示名稱符合但不是您所搜尋符號的實際參考符號。 例如,如果您有兩個各自定義成員函式 Size 的類別,且您在 Class1 物件的參考上搜尋 Size,則任何對於 Class2Size 參考都會顯示為未確認。

  • 未處理的結果尋找所有參考 作業可能需要一些時間才能在較大的程式代碼基底上完成,因此結果清單會顯示此處的「未處理」結果。 未處理的結果與所搜尋符號名稱相符,但尚未確認為實際的程式碼參考。 您可以開啟此篩選條件以取得更快的結果。 某些結果可能不是實際參考。

排序結果

您可以選取任何資料行,依該資料行將結果排序。 您可以再選取資料行來交換遞增或遞減順序。

您可以使用編輯器視窗上方的 [瀏覽列],巡覽至檔案中的類型定義,或類型成員。

編輯器視窗上方導覽列的螢幕快照。它會顯示 cryptlib > ChannelSwitch > ChannelMessageSeriesEnd()。

另請參閱