クラスを追加する

Visual Studio C++ プロジェクトでクラスを追加するには、ソリューション エクスプローラーでプロジェクトを右クリックし、[追加][クラス] の順に選択します。 このコマンドにより、[クラスの追加] ダイアログ ボックスが開きます。

クラスを追加するとき、MFC または ATL に既に存在するクラスのものとは異なる名前を指定する必要があります。 いずれかのライブラリに既に存在する名前を指定すると、IDE はエラー メッセージを表示します。

プロジェクト命名規則によって既存名の使用が要求される場合、名前の 1 つ以上の大文字を小文字に (あるいは小文字を大文字に) 変更できます。C++ では大文字と小文字が区別されるためです。 たとえば、クラスに CDocument という名前を付けることはできませんが、cdocument という名前を付けることができます。

このセクションの内容

追加するクラスの種類

[クラスの追加] ダイアログ ボックスで、左のウィンドウの [Visual C++] ノードを展開すると、インストールされているテンプレートがいくつかのグループになって表示されます。 グループには、CLRATLMFCC++ があります。 グループを選択すると、そのグループで利用できるテンプレートの一覧が真ん中のウィンドウに表示されます。 各テンプレートには、クラスに必要なファイルとソース コードが含まれています。

新しいクラスを生成するには、真ん中のウィンドウでテンプレートを選択し、[名前] ボックスにクラスの名前を入力し、[追加] を選択します。 このボタンによってクラスの追加ウィザードが開くので、クラスのオプションを指定できます。

  • MFC クラスを作成する方法の詳細については、MFC クラスに関するページを参照してください。

  • ATL クラスを作成する方法の詳細については、ATL シンプル オブジェクトに関するページを参照してください。

注意

[MFC に ATL サポートを追加] テンプレートの場合、クラスは作成されませんが、ATL を使用するようにプロジェクトが構成されます。 詳細については、MFC プロジェクトの ATL サポートに関するページを参照してください。

MFC、ATL、CLR を使用しない C++ クラスを作るには、インストールされているテンプレートの C++ グループの C++ クラス テンプレートを使用します。 詳細については、「一般 C++ クラスの追加」を参照してください。

2 種類のフォームベース C++ クラスを利用できます。 最初の CFormView クラスでは、MFC クラスが作成されます。 2 番目のクラスでは、CLR Windows フォーム クラスが作成されます。

[クラスの追加] ダイアログ ボックス

Visual Studio 2015 の [クラスの追加] ダイアログ ボックスのテンプレートを使用すると、次の操作を実行できます。

  • 対応するコード ウィザードを開始する (使用できる場合)。 詳細については、「コード ウィザードを使用した機能の追加」を参照してください。

    - または -

  • 適したファイルおよびソース コードをプロジェクトに追加して、新しいクラスを自動作成する。

[クラスの追加] ダイアログ ボックスには、[プロジェクト] メニュー、ソリューション エクスプローラークラス ビューからアクセスできます。

注意

現在のプロジェクトに対応しないクラスを追加しようとすると、エラー メッセージが表示されます。 [OK] を選択すると、[クラスの追加] ダイアログ ボックスに戻ります。

Visual Studio 2017 以降のバージョンでは、[クラスの追加] ダイアログはジェネリック C++ クラス ダイアログです。 詳細については、「一般 C++ クラスの追加」を参照してください。

[クラス ウィザード] ダイアログ ボックス

クラスは、[クラス ウィザード] ダイアログで、インストールされているテンプレートから作成できます。 [クラス ウィザード] を使用するには、ソリューション エクスプローラーでプロジェクトを右クリックし、ショートカット メニューの [クラス ウィザード] をクリックします。 ダイアログの [クラスの追加] ボタンには、テンプレートを選択するためのドロップダウン コントロールがあります。

C++ の [クラス ウィザード] ダイアログ ボックスのスクリーンショット。

クラス ウィザードを使用して、既存のクラスを変更したり、調べたりすることもできます。

クラスの追加テンプレート

クラスの追加 テンプレートには、4 つのカテゴリ (.NET、ATL、MFC、汎用) があります。

.NET

Template ウィザード
ASP.NET Web サービス 使用不可
コンポーネント クラス (.NET) 使用不可
インストーラー クラス (.NET) 使用不可
ユーザー コントロール (.NET) 使用不可
Windows フォーム (.NET) 使用不可

ATL

Template ウィザード
MFC に ATL サポートを追加 使用不可
ATL コントロール ATL コントロール ウィザード
ATL ダイアログ ATL ダイアログ ウィザード
ATL シンプル オブジェクト ATL シンプル オブジェクト ウィザード
WMI イベント プロバイダー WMI イベント プロバイダー ウィザード
WMI インスタンス プロバイダー WMI インスタンス プロバイダー ウィザード

MFC

Template ウィザード
MFC クラス MFC クラス追加ウィザード

ジェネリック クラス

Template ウィザード
汎用 C++ クラス 汎用 C++ クラス ウィザード