Visual C++ (Visual Studio)による標準C++準拠プログラミング
標準C++準拠プログラミングをVisual C++ (Visual Studio)で行うときは以下のようにする。ここでの説明では、Visual Studio Express 2012 for Windows Desktopを用いるが、これは無料開発ツールとして
http://www.microsoft.com/visualstudio/jpn/downloads
からダウンロードすることができる。このVisual Studioを起動すると図1のようになる(ウィンドウの枠のドラッグで適当に小さくしてある。以下、同様)。
図1
新しくプログラムを作成するときは、メニュ「ファイル|新しいプロジェクト」を選ぶ(図2)。
図2
メニュ「新しいプロジェクト」のクリックで図3のダイアログウィンドウが表示される。
図3
左のペインにおいて「Visual C++ | 全般」をクリックして選び、中央のペインに表示されている項目から「空のプロジェクト」をクリックして選ぶ。「場所」として設定されているフォルダの下にソリューション名のフォルダが作成され、ソリューション名の下に作成されるプロジェクト名のフォルダ内にプログラムファイルが作成される。「場所」は、その右にある「参照」のクリックで表示されるダイアログウィンドウで設定し直すことができる。これらの詳しい説明は、<岡本安晴「大学生のための心理学VC++プログラミング入門」勁草書房、第0章「はじめに」>などを参照されたい。
図3の状態で「OK」ボタンをクリックすると図4の画面になる。
図4
図4の状態でフォルダの中を見ると図5のようになっている。
図5
フォルダ「Project1(ソリューション名)」の下のフォルダ「Project1(プロジェクト名)」に2つのファイルが作成されている。これらは、Visual Studioがプロジェクト(Visual Studioではプログラムなどをプロジェクトとして作成する)の管理のために勝手に作成したもので、プログラミングにおいてはVisual Studioにそれらの管理を任せておくべきものである。プログラムのファイルは、メニュ「プロジェクト|新しい項目の追加」によって作成する(図6)。
図6
メニュ「新しい項目の追加」のクリックで図7のダイアログウィンドウが表示される。
図7
左のペインにおいて「Visual C++|コード」をクリックして選び、中央のペインに表示される項目から「C++ファイル」を選ぶ。名前(図7では「Source.cpp」)はソースファイル名を「*.cpp」の形式で自由に設定できる。これらの設定後、「追加」ボタンをクリックすると図8の画面になる。
図8
図7で設定したファイル名「Source.cpp」のファイルがエディタで表示される(図8)。エディタ画面内に図9のようにコードを書き込む。
図9
図9のプログラムをビルド・実行するために「F5」キーを押すと、図10のダイアログウィンドウが表示される。
図10
「はい」ボタンのクリックでビルドが始まり、プログラムにエラーがないと実行される。図9のプログラムの場合は、実行は文字列“Hello !”の表示後、即終了するが、正常に終了したことは、出力ペインに表示されている(図11)。
図11
プログラムが文字列“Hello !”の出力後、停止するように、図12のようにコードを加える。
図12
図12では、「cin >> c」の実行によって、キーボードで何か文字キーを押してからEnterキーが押されるまで入力待ちの状態になる。図12の状態で「F5」キーを押して、ビルド・実行すると、図13のように表示されたコンソール画面は文字入力待ちの状態になる。
図13
何か文字キー(図14では、「a」のキー)を押してから、Enterキーを押すと、プログラムは実行終了となる。
図14
なお、Visual C++(Visual Studio)では、ビルドの対象となるファイルはプロジェクトのファイルとしてソリューションエクスプローラに表示されている必要がある。単にプロジェクトのフォルダ内に存在するだけではビルドの対象とはならない。新規にファイル(ソースファイル「*.cpp」やヘッダーファイル「*.h」)を作成するときは、「新しい項目の追加」ダイアログウィンドウ(図7)によって追加の操作を行うか、コピーしたファイルを用いるときはメニュ「既存項目の追加」(図6)を選んで追加の操作を行う。コピーしたファイルを用いる方法については<分散・不偏分散・標準偏差:C++/Linuxシミュレーションプログラム>で説明している。また、フォームアプリケーションの場合は、コピーしただけではデザイナでフォームを表示することができない。コピーを受け取る側で簡単な準備が必要であるが、詳しくは<岡本安晴「大学生のための心理学VC++プログラミング入門」勁草書房、第17.2節「子フォームの再利用」>を参照されたい。