コード スニペット
適用対象:Visual Studio
Visual Studio for Mac
Visual Studio Code
コード スニペットは、右クリック コンテキスト メニュー コマンドまたはホットキーの組み合わせを使用してコード ファイルに追加できる、再利用可能なコードの小さなブロックです。 通常、コード スニペットには try-finally
ブロックや if-else
ブロックなどのよく使用されるコード ブロックが含まれていますが、それらを使用してクラスまたはメソッドの全体を追加することもできます。
Note
この記事は、Windows 上の Visual Studio に適用されます。 Visual Studio for Mac については、「コード スニペット (Visual Studio for Mac)」を参照してください。
コード スニペットは、C#、C++、Visual Basic など (一例です)、さまざまなプログラミング言語で使用することができます。
特定の言語で使用可能なすべてのスニペットを表示するには、メニュー バーから [ツール]>[コード スニペット マネージャー] を選択して (または、Ctrl+K キー、Ctrl+B キーを押して)、ダイアログ ボックスの上部にあるドロップダウン メニューから目的の言語を選択します。
Visual Studio では、コード スニペットをコード ファイルに追加する方法がいくつかあります。
メニュー バーで、[編集]>[IntelliSense]>[スニペットの挿入] の順に選択します
コード エディターの右クリック メニューまたはコンテキスト メニューから、[スニペット]>[スニペットの挿入] を選択します
キーボードで Ctrl+K キー、Ctrl+X キーを押します
拡張スニペットとブロックの挿入用スニペット
ご利用のコードに追加できるコード スニペットとしては、2 種類あります。
スニペットの種類 | 用途 |
---|---|
展開 | 指定した挿入ポイントに追加され、スニペットのショートカットを置き換える場合があります |
ブロックの挿入 | 選択したコード ブロックの周りに追加されます (C# と C++ でのみ使用できます) |
C# の拡張スニペットの次の例では、ショートカット tryf
によって try-finally ブロックが追加されています。
try
{
}
finally
{
}
この拡張スニペットを追加する方法を次に示します。
コード ウィンドウで、スニペットを追加する場所にカーソルを置きます。
右クリックコンテキスト メニューから [スニペットの挿入] を選択します。
[Visual C#] を選択してから、「
tryf
」と入力し、Tab キーを押します (または、「tryf
」と入力して Tab キーを 2 回押します)。
C++ のブロックの挿入用スニペットの例では、ショートカット if
は挿入スニペットまたはブロックの挿入用スニペットとして使用できます。 コード行 (例: return FALSE;
) を選択した場合は、[ブロックの挿入]>[if] を選択すると、行の周りにスニペットが展開されます。
if (true)
{
return FALSE;
}
スニペットの置換パラメーター
スニペットには、置換パラメーターを含めることができます。置換パラメーターとは、作成中のコードに応じた置換を必要とするプレースホルダーです。 前の例で、true
は置換パラメーターであり、適切な条件への置換が必要です。 置換を行うと、スニペット内の同じ置換パラメーターのすべてのインスタンスでもこれが繰り返されます。
たとえば、Visual Basic には、プロパティを挿入するコード スニペットがあります。 スニペットを挿入するには、Visual Basic コード ファイルの右クリック コンテキスト メニューから [スニペット]>[スニペットの挿入] の順に選択します。 続いて、[コード パターン]>[プロパティ、プロシージャ、イベント]>[プロパティの定義] の順に選択します。
次のコードが挿入されます。
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
newPropertyValue
を m_property
に変更すると、newPropertyValue
のすべてのインスタンスが変更されます。 プロパティ宣言の String
を Int
に変更すると、set メソッド内の値も Int
に変更されます。