在 Visual Studio 中使用程式碼片段

代碼段是可重複使用的程式碼小區塊,您可以新增至程式碼檔案。 程式碼片段通常包含常用的結構,例如 Try...FinallyIf...Else 區塊。 你也可以用程式碼片段來新增整個類別或方法。

程式碼片段有一個標題,可用來選取該片段,且也可以設定捷徑,讓你輸入後插入該片段。 代碼片段也可以包含取代參數,作為佔位符。 Visual Studio 提供多種語言的程式碼片段,包括 C#、C++ 和 Visual Basic。

先決條件

  • Visual Studio 已安裝支援你想使用的程式語言。 可用的程式碼片段取決於已安裝的工作負載與語言元件。
  • 一個在編輯器中開啟並被相應語言服務識別的程式碼檔。 以 C++ 為例,開啟一個 .cpp or .h 檔案。

了解片段類型

Visual Studio 支援兩種類型的程式碼片段:

  • 擴充片段會在指定的插入點加入程式碼。
  • 環繞片段會在選取的程式碼周圍加入程式碼。 環繞式程式碼片段僅適用於 C# 和 C++。

尋找可用的片段

要查看已安裝的語言片段,請選擇 工具>程式碼片段管理器 ,或按 Ctrl+K、Ctrl+B。 在 程式碼片段管理器中,從 語言 列表中選擇一種語言。

若要建立並匯入您自己的代碼段,使其出現在代碼段清單中,請參閱 逐步解說:在Visual Studio中建立代碼段

注意

鍵盤快捷鍵會依設定檔、情境、鍵盤配置及自訂按鍵綁定而有所不同。 要找到指令的綁定,請參見 「識別並自訂鍵盤捷徑」。

插入擴充片段

擴充片段會在插入點插入程式碼。 例如,C# tryf 片段會新增一個 try/finally 區塊:

try
{

}
finally
{

}

你必須在可使用陳述式的位置插入 tryf 程式碼片段,例如在方法、索引子、屬性存取子或事件存取子內。

  1. 在程式代碼編輯器中,將游標放在您要新增代碼段的位置。

  2. 執行下列其中一項動作:

    • 在選單列中,選擇 編輯>IntelliSense>插入摘要
    • 按一下滑鼠右鍵,然後選取「程式碼片段>插入程式碼片段」。
    • Ctrl+K、Ctrl+X
  3. 在片段選擇器中,打開 Visual C# 資料夾,然後雙擊 tryf。 你也可以選擇 tryf ,然後按 TabEnter

try / finally方塊會出現在插入點,隨時準備自訂。

小提示

在有效的插入點, tryf輸入 ,然後按兩次 Tab 鍵 即可展開摘要,無需開啟摘錄選取器。

以片段包圍選定代碼

以片段包覆方式包裹選定的程式碼。 例如,C++ if 片段會將選取的行 return FALSE; 包裹在區 if 塊中:

if (true)
{
    return FALSE;
}

若要將所選的 C++ 程式碼括在其中:

  1. 在 a .cpp.h 檔案中,選擇你想要包裝的程式碼。

  2. 執行下列其中一項動作:

    • 在選單列中,選擇 「編輯>IntelliSense>環繞器。」
    • 右鍵點擊並選擇「環繞」。
  3. 在片段選擇器中,雙擊 if,或選擇 if ,然後按 Tab 鍵或 Enter

if該區塊會出現在所選代碼周圍。 將 true 預留位置符號替換為您想要評估的條件。

欲了解更多 C++ 程式碼片段,請參見 Visual C++ 程式碼片段

編輯替換欄位

片段可以包含替換欄位,插入後可以自訂。 當同一欄位出現多次時,改變一次出現會改變所有相關的事件。 按 Tab 鍵可移動到下一個替換欄位。

例如,Visual Basic 的「定義屬性」片段包含了支持變數、屬性名稱和屬性型別的連結欄位。 插入方式:

  1. 在 Visual Basic 程式碼檔中,右鍵點擊你想插入屬性的地方,然後選擇 Snippet>插入 Snippet
  2. 選取 [ 程序代碼模式>屬性]、[程式]、[事件>定義屬性]。

Visual Basic 程式碼片段選擇器的螢幕擷取畫面,其中在 [屬性]、[程序]、[事件] 下選取了 [Define a Property]。

插入下列程式代碼:

Private newPropertyValue As String
Public Property NewProperty() As String
    Get
        Return newPropertyValue
    End Get
    Set(ByVal value As String)
        newPropertyValue = value
    End Set
End Property

如果你改 newPropertyValuem_property,每個連結的實例 newPropertyValue 都會改變。 如果你將屬性類型 String 從 改為 Integer,每個連結的 實 String 例都會變為 Integer

故障排除程式碼片段

如果無法提供摘要或指令:

  • 確認 Visual Studio 是否辨識該檔案為預期的程式語言。
  • 確認安裝所需的工作負載或語言元件。
  • 工具>程式碼片段管理器中,確認該程式碼片段已安裝於所選語言中。
  • 如果鍵盤快捷鍵無法如預期運作,請使用 Identify 並自訂鍵盤快捷鍵 ,查詢該指令目前的綁定。
  • 檢查插入點是否適用於所選片段。 例如,有些 C# 程式碼片段僅在方法或型別宣告中有效。 關於有效的 C# 插入位置,請參見 C# 程式碼片段

檢閱由程式碼片段插入的程式碼

片段程式碼展示了執行任務的基本方法。 在應用前,先審查並調整生成的程式碼。 請考慮程式碼如何處理例外、存取資源、驗證輸入以及保護秘密。

把從網路下載的片段當作其他下載的程式碼來處理。 只從你信任的來源下載片段,並在匯入或執行前檢查片段程式碼和元資料。

在 .NET Framework 專案中,片段可以使用該References元素來新增專案參考。 檢視 ImportsReferences 元素,並確認你信任這些引用的組件。 更多資訊請參閱 匯入命名空間程式碼摘要結構參考

參見