Visual C++ のコード スニペット

Visual Studio では、コード スニペットを使用して、よく使用されるコードを C++ コード ファイルに追加できます。 コード スニペットを使うと、速く、容易に、信頼性の高いプログラム コードを作成できます。

C++ コード スニペットの完全な一覧

コード スニペットは C++ と C# でほとんど同じように動作しますが、既定のコード スニペットのセットは異なります。 使用可能な C++ コード スニペットの一覧を表示するには、Visual Studio のメニュー バーから [ツール>コード スニペット マネージャー] を選択するか、Ctrl キー、K キー、B キー+を押して、[言語] ドロップダウン メニューから [Visual C++] を選択します。

Visual C++ フォルダーを展開して、すべての C++ コード スニペットの名前をアルファベット順に表示します。 スニペットを選択すると、スニペットに関する情報が表示されます。 コード スニペットの詳細については、「コード スニペット」を参照してください

拡張スニペットとブロックの挿入スニペット

拡張コード スニペットは、コード内の特定の場所に挿入することも、選択したコードを surround-with コード スニペットで囲んで挿入することもできます。

コード スニペットの挿入

C++ コード スニペットを挿入するには:

  1. C++ .cpp または .h ファイルを開き、挿入ポイントをファイル内のどこかに配置します。

  2. 以下のいずれかのアクションを実行します:

    • 右クリックし、コンテキスト メニューから [スニペットの挿入] を選択します。
    • Visual Studio のメニュー バーで、[IntelliSense>挿入スニペットの編集]>を選択します。
    • Ctrl K、X キーをします+
  3. ドロップダウン リストで #if をダブルクリックするか、「#if」と入力して Enter キーまたは Tab キーを押します。挿入ポイントに次のコードが追加されます。

    #if 0
    
    #endif // 0
    
  4. 0正しい条件に置き換えます。

選択したコードをコード スニペットで囲む

選択したコードをコード スニペットで囲むには:

  1. C++ .cpp または .h ファイルを開き、いくつかのコードを選択します。 次の例では、線 #include "pch.h" が選択されています。

  2. 以下のいずれかのアクションを実行します:

    • 右クリックし、コンテキスト メニューから [次に囲む] を選択します。
    • Visual Studio のメニュー バーで、[IntelliSense>Surround With の編集>] を選択します。
    • Ctrl K、S キー+します。
  3. ドロップダウン リストで #if をダブルクリックするか、「#if」と入力して Enter キーまたは Tab キーを押します。コードは、選択した行を囲みます。

    #if 0
    #include "pch.h"  // or whatever line you had selected
    #endif // 0
    
  4. 0正しい条件に置き換えます。

C++ コード スニペットの使用方法

ほとんどの C++ コード スニペットの名前はわかりやすいものですが、一部の名前は混乱する可能性があります。

クラス、classi

このスニペットは class 、.. という名前 MyClassのクラスの定義を提供します。 適切な既定のコンストラクターとデストラクターの定義は、クラスの外部にあります。

class MyClass
{
public:
    MyClass();
    ~MyClass();

private:

};

MyClass::MyClass()
{
}

MyClass::~MyClass()
{
}

コード スニペットでは classi 、名前付きの MyClassクラスの定義も提供されますが、既定のコンストラクターとデストラクターはクラス定義内で定義されます。

class MyClass
{
public:
    MyClass()
    {
    }

    ~MyClass()
    {
    }

private:

};

For、forr、rfor

3 つの異なる for スニペットは、さまざまな種類のループを for 提供します。

  • このスニペットは rfor 、範囲ベースの for ループを提供します。 インデックスに基づく for ループよりも、このコンストラクトが適しています。

    for (auto& i : v)
    {
    
    }
    
  • このスニペットは forfor 条件がオブジェクトの長さに基づくループを size_t提供します。

    for (size_t i = 0; i < length; i++)
    {
    
    }
    
  • このスニペットは forr 、条件が整数のオブジェクトの長さに基づく逆 for ループを提供します。

    for (int i = length - 1; i >= 0; i--)
    {
    
    }
    

デストラクターのスニペット (~)

デストラクター スニペット ~ は、さまざまなコンテキストで異なる動作を示します。 このスニペットをクラス内に挿入すると、そのクラスのデストラクターが提供されます。

たとえば、デストラクター スニペットを名前付きの SomeClassクラス内に挿入すると、次のデストラクター SomeClassが提供されます。

class SomeClass {
    ~SomeClass()
    {

    }
};

デストラクター スニペットをクラスの外部に挿入すると、プレースホルダー名を持つデストラクターが提供されます。

~TypeNamePlaceholder()
{

}