チュートリアル: プロジェクトとソリューションの使用 (C++)
ここでは、Visual Studio で C++ プロジェクトを作成し、コードを追加し、プロジェクトをビルドして実行する方法について説明します。このチュートリアルのプロジェクトは、何人のプレーヤーが各種のカード ゲームを実行しているを追跡するプログラムです。
Visual Studio では、作業内容はプロジェクトとソリューションに整理されます。ソリューションには、DLL とその DLL を参照する実行可能ファイルなど、複数のプロジェクトを含めることができます。詳細については、「ソリューションおよびプロジェクト」を参照してください。
必須コンポーネント
- このチュートリアルを完了するには、C++ 言語の基本を理解している必要があります。
Visual C++ プロジェクト
プロジェクトを作成するには、まずプロジェクトの種類のテンプレートを選択します。プロジェクトのぞれぞれの種類で、Visual Studio はコンパイラの設定と、その種類に応じて、後で変更できるスタート コードを生成します。
プロジェクトを作成するには
メニュー バーで [ファイル]、[新規]、[プロジェクト] の順にクリックします。
[新しいプロジェクト] ダイアログ ボックスの左ペインで、[インストールされたテンプレート] ノード、[Visual C++] ノードを展開し、[Win32] をクリックします。
中央のペインのインストールされたテンプレートの一覧で、[Win32 コンソール アプリケーション] を選択します。
[名前] ボックスにプロジェクトの名前を入力します。この例では「Game」と入力します。
[場所] ドロップダウン リストに表示される既定の場所をそのまま使用するか、別の場所を入力するか、または [参照] を選択してプロジェクトを保存するディレクトリを参照できます。
プロジェクトを作成すると、Visual Studio により、そのプロジェクトがソリューションに配置されます。既定では、ソリューション名はプロジェクト名と同じです。[ソリューション名] ボックスの名前を変更できますが、この例では既定の名前を使用します。
[OK] をクリックして、Win32 アプリケーション ウィザードを起動します。
Win32 アプリケーション ウィザードの [概要] ページで、[次へ] をクリックします。
[アプリケーションの設定] ページの [アプリケーションの種類] で、[コンソール アプリケーション] を選択します。[追加オプション] の下で、[プリコンパイル済みヘッダー] 設定をクリアし、[空のプロジェクト] 設定を選択します。[完了] をクリックすると、プロジェクトが作成されます。
これでプロジェクトが作成されましたが、ソース コード ファイルはまだありません。
ソリューション内のプロジェクトとファイルの整理
ソリューション エクスプローラーを使用して、ソリューションのプロジェクト、ファイル、その他のリソースを整理および管理できます。
ここでは、クラスをプロジェクトに追加する方法を説明します。クラスを追加すると、Visual Studio は、対応する .h ファイルと .cpp ファイルを追加します。次に、クラスをテストするメイン プログラムの新しいソース コード ファイルを追加します。
プロジェクトにクラスを追加するには
ソリューション エクスプローラーが表示されない場合は、メニュー バーで [表示]、[ソリューション エクスプローラー] の順にクリックします。
ソリューション エクスプローラーで [ヘッダー ファイル] フォルダーのショートカット メニューを開き、[追加]、[クラス] の順に選択します。
次に [クラスの追加] ダイアログ ボックスの左ペインで、[Visual C++] ノードを展開して [C++] を選択し、中央のペインのインストールされたテンプレートの一覧で [C++ クラス] を選択します。[追加] ボタンをクリックします。
一般 C++ クラス ウィザードで、[クラス名] ボックスに「Cardgame」と入力します。既定のファイル名と設定を変更しないでください。[完了] をクリックします。
Cardgame.h ファイルがエディターで開きます。次の変更を行います。
クラス定義の左中かっこの後ろに、プライベート データ メンバーを 2 つ追加します。
int players; static int totalParticipants;
Visual Studio で生成される既定のコンストラクターを変更します。public: アクセス指定子の後で、次のような行を探します。
Cardgame(void);
これを、"players" という名前の型 int の 1 個のパラメーターを受け取るように変更します。
Cardgame(int players);
既定のデストラクターの後に、GetParticipants という名前の静的な int メンバー関数のインライン宣言を追加します。これは、パラメーターを受け取らず totalParticipants の値を返します。
static int GetParticipants() { return totalParticipants; }
変更後、Cardgame.h ファイルは次のようになります。
#pragma once class Cardgame { int players; static int totalParticipants; public: Cardgame(int players); ~Cardgame(void); static int GetParticipants() { return totalParticipants; } };
行 #pragma once は、1 回だけファイルを含むようにコンパイラに指示します。詳細については、「once」を参照してください。
このヘッダー ファイルの他の C++ キーワードについては、「class」、「int」、「static」、および「public」を参照してください。
編集ウィンドウの [Cardgame.cpp] タブをクリックして編集のために開きます。
ファイル内のすべてを削除して、このコードと置き換えます。
#include "Cardgame.h" #include <iostream> using namespace std; int Cardgame::totalParticipants = 0; Cardgame::Cardgame(int players) : players(players) { totalParticipants += players; cout << players << " players have started a new game. There are now " << totalParticipants << " players in total." << endl; } Cardgame::~Cardgame() { }
[!メモ]
コードを入力するときにオート コンプリートを使用できます。たとえば、次のコードを入力している場合、players または totalParticipants を入力するには、「pl」または「tot」と入力した後に Ctrl + Space キーを押すと自動的に補完されます。
#include の詳細については、「#include ディレクティブ (C/C++)」を参照してください。
ソース ファイルの追加
ここで、クラスをテストするメイン プログラムのソース コード ファイルを追加します。
新しいソース ファイルを追加するには
ソリューション エクスプローラーで [ソース ファイル] フォルダーのショートカット メニューを開き、[追加]、[新しい項目] の順に選択します。
[新しい項目の追加] ダイアログ ボックスの左ペインで、[インストール済み] ノードを展開し、[Visual C++] ノードを展開して [コード] をクリックします。中央のペインで、[C++ ファイル (.cpp)] をクリックします。
[名前] ボックスに「TestGames.cpp」と入力し、[追加] をクリックします。
TestGames.cpp 編集ウィンドウで次のコードを入力します。
// TestGames.cpp #include "Cardgame.h" #include <iostream> using namespace std; void PlayGames() { Cardgame bridge(4); Cardgame blackjack(8); Cardgame solitaire(1); Cardgame poker(5); } int main() { PlayGames(); return 0; }
プロジェクトのビルドと実行
ここでは、プロジェクトをビルドし、アプリケーションを実行します。
プロジェクトをビルドして実行するには
メニュー バーの [ビルド]、[ソリューションのビルド] の順にクリックします。
[!メモ]
[ビルド] メニューの表示のない Express Edition を使用している場合は、メニュー バーで [ツール]、[設定]、[上級者用の設定] を選択してビルド メニューの表示を有効化します。
ビルドからの出力は、[出力] ウィンドウに表示されます。ビルドが成功した場合、出力は次のようになります。
1>------ Build started: Project: Game, Configuration: Debug Win32 ------ 1> TestGames.cpp 1> Cardgame.cpp 1> Generating Code... 1> Game.vcxproj -> c:\users\username\documents\visual studio\Projects\Game\Debug\Game.exe ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
**\[出力\]** ウィンドウはエディションやビルド構成によって異なる手順を表示しますが、プロジェクトのビルドが成功した場合、最後の行は次のような出力になります。
ビルドが成功しなかった場合は、コードを、前の手順で示されたコードと比較してください。
プロジェクトを実行するには、メニュー バーで [デバッグ]、[デバッグなしで開始] の順にクリックします。出力は、次のようになります。
4 人のプレーヤーが新しいゲームを開始しました。現在、合計で 4 人のプレーヤーがいます。 8 人のプレーヤーが新しいゲームを開始しました。現在、合計で 12 人のプレーヤーがいます。 1 人のプレーヤーが新しいゲームを開始しました。現在、合計で 13 人のプレーヤーがいます。 5 人のプレーヤーが新しいゲームを開始しました。現在、合計で 18 人のプレーヤーがいます。
次の手順
前へ:C++ デスクトップ開発のための Visual Studio IDE の使用次へ:チュートリアル: プロジェクトの構築 (C++)