【C++入門】Visual Studioの導入方法をわかりやすく解説!

Visual StudioでC++を始めたいと思っても、どこから手を付けるかを調べることも難しいのではないでしょうか。そんなときは、1つの切っ掛けとして、WindowsのデスクトップアプリケーションやLinuxのコンソールアプリケーションを作成してみると良いでしょう。この記事は、

Visual StudioでC++を使用して、Windowsのデスクトップアプリケーションを作成してみたい
Visual StudioでC++を使用して、Linuxのコンソールアプリケーションを作成してみたい

というあなたのために用意しました。プロジェクトを作成し、ソースコードを少し修正することで、「Hello, world!」を表示してみます。思った以上に簡単ですよ。行ってみましょう!

こんな方に向けて書きました

  • C++の開発環境について知りたい方
  • Visual Studioでさまざまな環境のアプリを作成したい方

目次

Visual StudioでC++を始める前に

そもそもVisual Studioとは

Visual Studioは、Microsoft社が開発している統合開発環境(IDE)です。統合開発環境は、ソースコードを書くコードエディタ、実行可能ファイルを作成するコンパイラやリンカ、デバッグに便利なデバッガなどで構成されています。

VIsual Studioの基本については以下の記事で詳しく解説していますので、ぜひ参考にしてください。

Visual Studio 2017のインストール

C++を始めるには、Visual Studio 2017をインストールする方法があります。最新版のVisual StudioやCommunityのインストールに関しては、以下の記事を参考にしてください。

Visual Studio C++でWindowsアプリを開発してみよう

それでは、お待たせしました。Visual StudioでC++を使用して、Windowsのデスクトップアプリケーションを作成してみましょう。もちろん、表示する文字列は「Hello, world!」です。

プロジェクトを作成しよう!

まずはWindowsデスクトップアプリケーションのプロジェクトを作成しましょう。

(1)ファイルをクリックし、新規作成をクリックして、プロジェクトをクリックします。

vscpp01

画像:プロジェクトの新規作成

(2)Visual C++をクリックし、Windowsデスクトップをクリックして、Windowsデスクトップアプリケーションをクリックします。

vscpp02

画像:Windowsデスクトップアプリケーションをクリック

(3)名前を「WindowsHelloWorldProject」に修正し、参照をクリックしてソリューションを保存するフォルダを選択し、OKをクリックします。

vscpp03

画像:Windowsデスクトップアプリケーションのプロジェクト作成完了

これで「Windowsデスクトップアプリケーション」のプロジェクトが作成されました。

C++のプログラムを作成してみよう!

「Windowsデスクトップアプリケーション」のプロジェクトを作成すると、自動的にデスクトップアプリケーションのひな形が作成されます。このひな形に肉付けをしていけば、任意のデスクトップアプリケーションを作成できるという仕組みです。

上で予告していたとおり、ウィンドウの中央に「Hello, world!」を表示するソースコードを追加しましょう。

(1)「WindowsHelloWorldProject.cpp」が表示されていることを確認し、「// TODO: HDC を使用する描画コードをここに追加してください…」の次の行に、以下のソースコードを入力します。

RECT rect;
GetClientRect(hWnd, &rect);
DrawText(
    hdc,
    TEXT("Hello, world!"),
    -1,
    &rect,
    DT_CENTER | DT_VCENTER | DT_SINGLELINE
);

実際に入力した画面は以下のようになります。

vscpp04

画像:ソースコード入力

C++のコンパイルと実行

C++の場合は、ソースコードのコンパイル(プロジェクトのビルド)と実行が必要です。Visual Studioを使用している場合は、「デバッグの開始」を選択すると、(必要に応じてファイルを保存して)ソースコードのコンパイルと、デバッグ実行を行えます。

(1)デバッグをクリックし、デバッグの開始をクリックします。

vscpp05

画像:デバッグ開始

(2)はいをクリックします。

vscpp06

画像:メッセージ画面

Windowsのデスクトップアプリケーションが起動し、ウィンドウの中央に「Hello, world!」と表示されます。

vscpp07

画像:「Hello, world!」の表示

このアプリケーションには、メニューもいくつか用意されています。ファイルをクリックし、アプリケーションの終了をクリックすると、アプリケーションが終了します。また、ヘルプをクリックし、バージョン情報をクリックすると、ダイアログが表示されます。

試しに、ウィンドウの大きさを変えてみたり、メニューを操作してみたり、ウィンドウの左上のアイコンや右上のアイコンをクリックしてみてください。普通のアプリケーションのように動作することが確認できたでしょうか?

上で追加したソースコードは、ウィンドウの中央に「Hello, world!」を表示するという意味ですので、その他の機能に関しては、Visual Studioが自動的に作成した機能になりますね。

作成したアプリケーションを他のWindows PCで動作させる

作成したアプリケーションを他のPC(以降、動作用のPC)で動作させる場合は、設定が必要です。設定を省略すると、以下のようなメッセージが表示され、アプリケーションは動作しません。

コンピューターにucrtbased.dllがないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてみてください。

コンピューターにVCRUNTIME140.dllがないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてみてください。

前者のメッセージが表示された場合は、開発用のPCでReleaseに設定を変更して、コンパイルし直しましょう。後者のメッセージが表示された場合は、動作用のPCで、Visual Studio 2017 の Microsoft Visual C++ 再頒布可能パッケージをインストールして、実行し直しましょう。

なお、再配布可能パッケージをダウンロードするときには、開発用のPCで設定した内容にあわせて、「x64」か「x86」を選択する必要があります。まずは、開発用のPCで必要な設定を紹介します。

(1)「Debug」をクリックし、「Release」をクリックします。

vscpp08

画像:設定

(2)「x86」と表示されていることを確認します。

vscpp09

画像:ビット数の確認

ここの設定によって、他のPCに「Visual Studio 2017 の Microsoft Visual C++ 再頒布可能パッケージ」をインストールするときに、「x64」をインストールするか、「x86」をインストールするかが決まります。

たとえば、「x86」に設定した場合は、他のPCに「Visual Studio 2017 の Microsoft Visual C++ 再頒布可能パッケージ」の「x86」をインストールする必要がある、という仕組みです。

(3)「C++のコンパイルと実行」で説明した操作で、アプリケーションを実行します。開発用のPCでアプリケーションが実行されます。

(4)実行可能ファイルを動作用のPCにコピーします。

今回のプロジェクトの場合は、「(ソリューションの保存フォルダ)WindowsHelloWorldProjectRelease」フォルダに作成された「WindowsHelloWorldProject.exe」を、他のPCにコピーします。

(5)動作用のPCで、「WindowsHelloWorldProject.exe」を実行します。

「コンピューターにVCRUNTIME140.dllがないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてみてください。」

と表示されたときは、以下の手順に従って、「Visual Studio 2017 の Microsoft Visual C++ 再頒布可能パッケージ」をインストールします。

(1)「Visual Studioのダウンロード」のサイトにアクセスし、「x86」を選択して、「ダウンロード」をクリックします。

vscpp10

開発用のPCで「x86」の代わりに「x64」を選択した場合は、ここでも「x64」を選択してダウンロードする必要があります。

(2)ダウンロードした「VC_redist.x86.exe」を実行します。

(3)「ライセンス条項および使用条件に同意する」をチェックし、「インストール」をクリックします。

vscpp11

画像:ライセンス確認

(4)「閉じる」をクリックします。

vscpp12

画像:セットアップ完了

(5)開発用のPCからコピーした「WindowsHelloWorldProject.exe」をダブルクリックします。

vscpp13

画像:「Hello, world!」表示

実行できたでしょうか?引き続きエラーメッセージが表示された場合は、「Visual Studio 2017 の Microsoft Visual C++ 再頒布可能パッケージ」のバージョンを確認してください。

どうにもうまくいかないときは、「x86」も「x64」もインストールするという手もありますので、試してみてください!

Visual Studio C++でLinuxアプリを開発してみよう

次に、少し難しいことに挑戦してみましょう。WindowsにインストールしたVisual StudioでC++を使用して、Linuxのコンソールアプリケーションを作成してみます。

ここでも、表示する文字列は「Hello, world!」です。

プロジェクトを作成しよう!

まずは「Visual Studioインストーラー」を起動して、Linuxアプリを開発するために必要なモノをインストールします。

(1)「ファイル」をクリックし、「新規作成」をクリックして、「プロジェクト」をクリックします。

vscpp14

画像:プロジェクト作成

(2)「Visual Studioインストーラーを開く」をクリックします。

vscpp15

画像:Visual Studioインストーラーを開く

(3)「C++によるLinux開発」をチェックして、「変更」をクリックします。

vscpp16

画像:C++によるLinux開発

(4)「続行」をクリックします。

vscpp17

画像:インストール前の確認

インストールが終了すると、Visual Studio 2017が再起動します。

(5)「ファイル」をクリックし、「新規作成」をクリックして、「プロジェクト」をクリックします。

vscpp18

画像:プロジェクト作成

(6)「Visual C++」 → 「クロスプラットフォーム」 → 「Linux」の順にクリックして、「コンソールアプリケーション(Linux)」をクリックします。

vscpp19

画像:コンソールアプリケーション(Linux)

(7)「名前」を「ConsoleHelloWorldApplication」に修正し、「参照」をクリックしてソリューションを保存するフォルダを選択し、「OK」をクリックします。

vscpp20

画像:名前の変更

これで「コンソールアプリケーション(Linux)」のプロジェクトが作成されました。続けて、作成したアプリを実行するLinuxサーバーを指定します。具体的には、Linuxサーバーのホスト名や接続するための設定を行います。

(8)「ツール」をクリックし、「オプション」をクリックします。

vscpp21

画像:ツール → オプション

(9)「クロスプラットフォーム」をクリックし、「接続マネージャー」をクリックして、「追加」をクリックします。

vscpp22

画像:クロスプラットフォーム → 接続マネージャー → 追加

(10)LinuxサーバーにSSHで接続するための情報を設定し、「接続」をクリックします。

vscpp23

画像:リモートシステムへの接続

※Ubuntu 16.04 LTS Desktopに接続する場合は、openssh-serverをインストールしたり、sshdを起動したりする必要があります。

(11)「OK」をクリックします。

vscpp24

画像:OKクリック

これで準備ができました。

C++のプログラムを作成してみよう!

「コンソールアプリケーション(Linux)」のプロジェクトを作成すると、Windowsアプリのときと同様に、自動的にコンソールアプリケーションのひな形が作成されます。

このひな形に肉付けをしていけば、任意のコンソールアプリケーションを作成できるという仕組みです。

上で予告していたとおり、単純に「Hello, world!」を表示するソースコードを追加しましょう。

(1)「main.cpp」をクリックし、「printf(“hello from ConsoleHelloWorldApplication!n”);」の行を、以下のソースコードに書き替えます。

printf("Hello, world!");

実際に入力した画面は以下のようになります。

vscpp25

画像:ソースコード入力

C++のコンパイルと実行

いよいよ、ソースコードのコンパイル(プロジェクトのビルド)と実行です。

Visual Studioを使用している場合は、「コンソールアプリケーション(Linux)」を作成しているときも、「デバッグの開始」を選択すると、(必要に応じてファイルを保存して)ソースコードのコンパイルと、デバッグ実行を行えます。

(1)「デバッグ」をクリックし、「デバッグの開始」をクリックします。

vscpp26

画像:デバッグ → デバッグの開始

(2)「はい」をクリックします。

vscpp27

画像:ビルド確認

コンソールアプリケーションが実行されます。が、「Hello, world!」が表示されません。

(3)表示を確認するために、「デバッグ」をクリックし、「Linuxコンソール」をクリックします。

vscpp28

画像:デバッグ → Linuxコンソール

「Linux Console Window」が表示され、「Hello, world!」の表示が確認できます。

vscpp29

画像:「Hello, world!」の表示

作成したアプリケーションをLinuxサーバーで実行する

ここで紹介した方法では、ソースコードのビルドやアプリケーションの実行は、Linuxサーバーで行われています。

Ubuntu 16.04 LTS Desktopの場合は、「~/projects/ConsoleHelloWorldApplication/bin/x64/Debug」に「ConsoleHelloWorldApplication.out」が作成されていました。

Ubuntuにログインして、上記の「ConsoleHelloWorldApplication.out」を実行しても、「Hello, world!」と表示されることが確認できます。

vscpp30

画像:「Hello, world!」の表示

まとめ

今回は、Visual Studioを使用して、C++でWindowsのデスクトップアプリケーションを作成する操作と、C++でLinuxのコンソールアプリケーションを作成する操作を説明しました。

どちらの場合もプロジェクトを作成すると、ひな形が作成されますので、アプリケーションを起動するだけでしたら、実は、ソースコードを追加する必要はありません。

今回は、「Hello, world!」を表示しただけですが、これをアプリケーションを作成する切っ掛けにしていただけると嬉しいです。

たとえば、Windowsのデスクトップアプリケーションを拡張するなら、よく見る右クリックメニューを表示するようにしてみるのもいいでしょう。

頑張ってください!

この記事を書いた人

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。侍テック編集部では技術系コンテンツを中心に有用な情報を発信していきます。

目次