このページでは、「作業の流れを体験する」を取り上げます。
以下は目次です。
このページでは実際に C++ のプログラムを書いて、実行するところまで試してみます。
まずは、いわゆる「Hello, Worldプログラム」と呼ばれるプログラムを作ります。Hello, Worldプログラムは、画面などの見えるところに、“Hello, World” と表示してみるという、伝統的な入門用プログラムです。[1]
このページの目的は、C++ プログラミングの流れを理解することです。まずは、言われるがままにやってみてください。
とりあえず、これからの C++学習用に作業場所を用意しましょう。PC内の好きな場所に、好きな名前でフォルダを作っておきます。今後、プログラムを作るたびに、このフォルダの中にさらにフォルダを作って、整理していくように考えることにします。
イメージは次のようなかたちです。cpp_programs に当たるものを自由に作ってください。
- cpp_programs フォルダ <-- C++プログラムの作業場所
- HelloWorld フォルダ <-- Hello, World プログラムを置く場所
- ... フォルダ <-- 2つ目のプログラムを置く場所
- ... フォルダ <-- 3つ目のプログラムを置く場所
作業場所を作ったら、Visual Studio を実行します。以下、Visual Studio 2019 を使った例を示します。
最初の画面で、【新しいプロジェクトの作成】を選択します。
次の画面では、【空のプロジェクト】を選択して、【次へ】を選択します。
次の画面では、【プロジェクト名】の入力と【場所】の選択を行います。この画面にはほかにも選択できる項目がありますが、今のところは無視しておきます。
【プロジェクト名】は、これから作るプログラムの名前です。何でもいいですが、今回は「HelloWorld」にしました。
【場所は】、プログラムのファイルをどこに作成するかの指定です。さきほど用意しておいた、作業用のフォルダの場所を選べばいいです。直接、その場所を入力してもいいですし、右側にある【…】というボタンから選ぶこともできます。
最後に右下にある【作成】を選択して、終了です。
そうすると、次の写真のような画面に進みます。
今の状況は、Visual Studio で C++ のプログラムを作るために必要な場所(プロジェクト (project))の作成を終えたところです。
プロジェクトの作成は Visual Studio でプログラミングを行う場合に必要なことであって、実は C++ そのものとは関係ありません。C++ としては、ソースコードがあって、コンパイルができればいいのです。余計な手間を増やしているという見方もできますが、代わりに Visual Studio がもつ多くの機能の恩恵を受けることができます。
画面の右側に、「ソリューション エクスプローラー」(solution explorer) と書かれている場所があります。ここには、ソリューション (solution) の内容が表示されています。ソリューションは、プロジェクトのさらに上位にあたる存在で、複数のプロジェクトをまとめたものです。学習段階では、まず間違いなくプロジェクトは1つで済みますが、その場合でも、プロジェクトを1つだけもったソリューションが作られます。
【ソリューション エクスプローラー】には、現在のプロジェクトの中身も表示されています。2行目のところ(写真で青くなっているところ)にある「HelloWorld」が、今回作成したプロジェクトの名前です。
続いて、ソースファイルを作りましょう。Visual Studio の場合は、単に作るだけでなく、プロジェクトに登録する必要があります。作り方は色々ありますが、ここでは、Visual Studio上で操作を完結できる方法をとります。
【ソリューションエクスプローラー】に、【ソースファイル】【ヘッダーファイル】といったように、はじめから分類が作られています。【ソースファイル】のところで右クリックして、【追加】>【新しい項目】を選択します。
その後、表示された画面で、【C++ファイル (.cpp)】を選択し、【名前】を入力します。
【名前】は、これから作るソースファイルに付ける名前のことで、デフォルトでは「Source.cpp」となっています。学習段階としては大してこだわる意味もないですし、このままで問題ありませんが、本格的にプログラムを作るときには、きちんと考えて名前を付けるようにしましょう。
学習段階でも本格的な開発でも、プログラムのメイン部分になるソースファイルには「main.cpp」という名前がよく使われるので、そのように変えてもいいでしょう。
【場所】についても変更したければしてもいいですが、現時点ではあまりそうする意味はないでしょう。複数のソースファイルを作るような規模の大きいプログラムを開発するようになったら、整理の意味でフォルダを変えることがあります。
入力を終えたら、右下の【追加】を選択します。すると、【ソリューションエクスプローラー】の【ソースファイル】のところにファイルが登録されています。
画面の左半分がソースコードを書く場所です。タブのところに「Source.cpp」と表示されているように、これは、Source.cpp の中身を編集するための領域です。
ここで一度、作成されたソースファイルが、きちんと作業用フォルダ内にあることを確認しておきましょう。エクスプローラーでみると、次のようになっているはずです。
ここにある「HelloWorld.sln」は、ソリューションファイル (solution file) と呼ばれる Visual Studio の管理用ファイルです。このファイルを開くと、自動的に Visual Studio が起動して、内容を見ることができます。
ところで、もしファイルの拡張子(ここでは .sln)が表示されていないようでしたら、Windows のエクスプローラーの設定を変えておきましょう(方法は「Windows編>拡張子」を参照)。プログラムを開発していく際には、拡張子の違いをきちんと把握・確認できるようにしておくと便利で、間違いを防ぐ意味もあります。
HelloWorldフォルダを開くと、次のようにファイルが作られています。
「Source.cpp」がソースファイルです。このファイルにソースコードを書き込んでいきます。これは、Visual Studio上で編集してもいいですし、ほかのテキストエディタなどで編集しても構いません。
ほかのファイルは Visual Studio で開くために必要な情報が書き込まれたファイルです。Visual Studio が自動的に編集するものなので、変更したり削除したりしないようにしましょう。拡張子が .vcxproj のファイルがプロジェクトそのものを管理している重要なファイルです。.vcxproj のファイルを開くことでも、Visual Studio を起動させることができます。
では、Source.cpp にソースコードを書いていきましょう。最初にお伝えしたとおり、ここで書くのは Hello, Worldプログラムのソースコードです。
Visual Studio の【ソリューションエクスプローラー】から「Source.cpp」を選択すると、編集用の領域が開くので、そこで編集できます。あるいは、ほかのテキストエディタで編集しても構いません。
Hello, Worldプログラムのソースコードは、次のとおりです。
#include <iostream>
int main()
{
std::cout << "Hello, World\n";
}
これを、一字一句違いがないように入力してください(色の違いは無視していいです)。
コピーアンドペーストすればそれまでではありますが、プログラミング学習としては、自分の手で1文字1文字入力したほうがいいです。
5行目のところの行頭には、半角の空白文字が4文字分空けてあります。
いくつか注意すべきポイントがあります。
ルールが多くて最初は戸惑うかも知れませんが、しばらくすると慣れると思います。間違っていても、この後の過程で「この辺りが間違っています」と教えてくれます。重大な問題を引き起こすわけではありませんから、間違いを恐れる必要はありません。そもそも、プログラミングにおいてはたくさん間違えることが当たり前です。
本当のところ、最初に提示したソースコードと完璧に同じでなくても大丈夫な部分もあります。ここで挙げたルールを見ていると厳密すぎて、がんじがらめな印象を受けたかもしれませんが、実際には自由度はあります。詳しいことは、導入編を終えて、本編に入ってから説明します。
入力を終えたら、保存します。Visual Studio では、Ctrl+S のショートカットキーで上書き保存できます。
今入力しているものは、Source.cpp のような名前で作成したファイルの中身であることを忘れないでください。作業中にも、区切りのいいところで保存するようにしましょう。
Visual Studio では、編集中で未保存の場合、タブのところのファイル名の末尾に「*」が付くほか、編集した行の左端のバーの色が変わっています。
入力を終えたらこんな状態になっています。
「プログラミングとは」のページで、プログラミングでは次の3つを繰り返すと説明しました。
ここまでの時点で1を終えました。次は2です。
Visual Studio でコンパイルをするには、ビルド (build) という操作を行います。
ビルドは、「プロジェクトに登録されているソースファイルから、実行できるファイルを作り出す」操作です。本当はコンパイルだけでなく、さまざまな操作をひとまとめにしていますが、今のところ詳細を知る必要はありません。
ビルドは、キーボードから F7キーを押すだけで行えます。あるいは、メニューバーの【ビルド】>【ソリューションのビルド】を選択します。
ビルドは、プロジェクトに登録されているソースファイルだけが対象になります。Visual Studio の外でソースファイルを作成した場合、プロジェクトに登録することを忘れないでください。
ビルドを行うと、Visual Studio の【出力】というウィンドウに結果が表示されます。
最後の行が、
ビルド: 1 正常終了、0 失敗、0 更新不要、0 スキップ
となっていることを確認してください。なんだかちょっと読みづらいですが、「1 正常終了」「0 失敗」「0 更新不要」「0 スキップ」という組み合わせで表示されています。「失敗」が 0 になっていれば大丈夫です。
なんらか問題があった場合には、「0 正常終了」「1 失敗」・・・といった表示になります。また、その場合には、エラーメッセージが表示されます。こうなってしまったときは、もう1度、ソースコードが正しく入力できているかどうか確認し、修正、保存、ビルドの手順を踏み直してください。
ビルドが成功すると、ソリューションファイルが置かれているフォルダに、Debug という名前のフォルダが作られて、その中に、ファイルが作られています。
「HelloWorld.exe」が、ビルドによって生成された実行ファイル (executable file) です。
HelloWorld.exe はエクスプローラー上で実行できますが、一瞬ウィンドウが表示されて、すぐに消えてしまいます。
結果を目視するためには、エクスプローラー上から実行するのではなく、コマンドプロンプト (command prompt) を使って実行します。詳しいことは「Windows編 > コンソールアプリを実行する」を参照してください。
学習の際には、Visual Studio でビルドした後、そのまま Visual Studio から実行して確認したほうが早いです。その方法はこの後取り上げます。
ビルドが成功したら、プログラムを実行できます。
プログラムを実行するには、F5キーを押すだけです。あるいは、メニューバーの【デバッグ】>【デバッグの開始】を選択します。
すると、次のようなウィンドウが表示されます。
最初の行に「Hello, World」と表示されています。これが、Hello, Worldプログラムの実行結果です。今回つくったプログラムのソースコードは、このように画面に「Hello, World」を表示するという指示書になっていたわけです。
3行目以降は、毎回表示されるメッセージで、特に気にする必要はありません。
「デバッグが停止したときに自動的にコンソールを閉じるには、[ツール] -> [オプション] -> [デバッグ] -> [デバッグの停止時に自動的にコンソールを閉じる] を有効にします。」と書かれていますが、その通りのことをすれば、実行時にウィンドウが表示されたまま待機しなくなります。そうなると、実行結果が目視できなくなるので、学習時にはかえって不便です。
キーボードから何か入力すると、ウィンドウが閉じられます。これで、初めての C++プログラミング体験はおしまいです。
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |