Visual Studio での C++ 開発の概要

Visual Studio 統合開発環境 (IDE) に属する Microsoft C++ (MSVC) では、他の言語と共通の多くのウィンドウやツールを共有します。 ソリューション エクスプローラー、コード エディター、デバッガーなどの多くは、「Visual Studio IDE」に記載されています。 共有ツールやウィンドウの一連の機能は、C++ 用と他の言語用のものでは若干異なることがよくあります。 一部のウィンドウやツールは、Visual Studio Professional 版または Visual Studio Enterprise 版でのみ使用できます。

Visual Studio IDE の共有ツールに加えて、MSVC には、ネイティブ コード開発に特化したいくつかのツールがあります。 この記事には、これらのツールの一覧も掲載します。 Visual Studio の各エディションで使用可能なツールの一覧については、「C++ Tools and Features in Visual Studio Editions」 (さまざまな Visual Studio エディションの C++ ツールと機能) を参照してください。

プロジェクトを作成する

プロジェクトは基本的に、実行可能プログラムやライブラリに組み込まれている、イメージやデータ ファイルなどの一連のソース コード ファイルとリソースです。

Visual Studio では、使用するすべてのプロジェクト システムやカスタム ビルド ツールがサポートされ、IntelliSense、参照、デバッグなどが完全にサポートされます。

  • MSBuild は、Visual Studio 用のネイティブ プロジェクト システムです。 メイン メニューから [ファイル]>[新規]>[プロジェクト] の順に選択すると、さまざまな種類の MSBuild プロジェクト テンプレートが表示されます。これを利用すると、さまざまな種類の C++ アプリケーションの開発を簡単に始められます。

    新規プロジェクト作成のダイアログのスクリーンショット。新しいプロジェクト テンプレートが表示されています。

    新規プロジェクトのダイアログのスクリーンショット。プロジェクト テンプレートが表示されています。

    一般的に、既存の CMake プロジェクトを使用したり、別のプロジェクト システムを使用したりしている場合を除き、新しいプロジェクトにはこれらのテンプレートを使用する必要があります。 詳細については、MSBuild ベースのプロジェクトを作成し、管理する方法に関するページを参照してください。

  • CMake はクロスプラットフォームのビルド システムであり、C++ によるデスクトップ開発のワークロードをインストールする際に Visual Studio IDE に統合されます。 新しいプロジェクトに CMake プロジェクト テンプレートを使用するか、CMakeLists.txt ファイルを含むフォルダーを開きます。 詳細については、「CMake projects in Visual Studio」 (Visual Studio の CMake プロジェクト) をご覧ください。

  • ファイルの緩やかな集合を含む、その他の C++ ビルド システムは、 [フォルダーを開く] 機能を通じてサポートされます。 単純な JSON ファイルを作成して、ビルド プログラムを呼び出し、デバッグ セッションを構成します。 詳細については、「Open Folder projects for C++」 (C++ の [フォルダーを開く] プロジェクト) をご覧ください。

ソース管理に追加

ソース管理では、複数の開発者間で作業を調整したり、開発中の作業を運用コードから分離したり、ソース コードをバックアップしたりすることができます。 Visual Studio の [チーム エクスプローラー] ウィンドウでは、Git と Team Foundation バージョン管理 (TFVC) がサポートされています。

Visual Studio 2019 の [チーム エクスプローラー] ウィンドウのスクリーンショット。

Visual Studio 2017 の [チーム エクスプローラー] ウィンドウのスクリーンショット。

Git と Azure のリポジトリの統合については、「Azure Repos と Visual Studio でコードを共有する」を参照してください。 Git と GitHub の統合については、「Visual Studio と GitHub: 一緒だともっと良い」を参照してください。

ライブラリを取得する

サードパーティ製のライブラリを取得してインストールするには、vcpkg パッケージ マネージャーを使います。 現在、1700 個を超えるオープンソース ライブラリ パッケージをカタログで使用できます。

デザイナーでユーザー インターフェイスを作成する

プログラムにユーザー インターフェイスがある場合、デザイナーを使用し、ボタンやリスト ボックスなどのコントロールをユーザー インターフェイスに簡単に入力できます。 ツールボックス ウィンドウからコントロールをドラッグし、デザイン サーフェイスにドロップすると、Visual Studio によって、それを動かすために必要なリソースとコードが生成されます。 その後、外観と動作をカスタマイズするコードを記述します。

デザイナーと [ツールボックス] ウィンドウのスクリーンショット。

  • ユニバーサル Windows プラットフォーム アプリのユーザー インターフェイスの設計方法について詳しくは、デザインと UI に関するページを参照してください。
  • MFC アプリケーションのユーザー インターフェイスの作成方法については、「MFC デスクトップ アプリケーション」を参照してください。
  • Win32 Windows プログラムの詳細については、「Windows C++ デスクトップ アプリケーションの種類」を参照してください

コードの記述

プロジェクトを作成すると、すべてのプロジェクト ファイルがソリューション エクスプローラー ウィンドウに表示されます。 (ソリューションは、1 つまたは複数の関連プロジェクトのための論理コンテナーです。)ソリューション エクスプローラーで .h または .cpp ファイルをクリックすると、ファイルがコード エディターで開きます。

ソリューション エクスプローラーとコード エディター ウィンドウのスクリーンショット。

コード エディターは、C++ ソース コード専用のワード プロセッサです。 このエディターでは、コードを読みやすく理解しやすいものにするために、言語のキーワード、メソッド名と変数名、およびその他のコードの要素が色分けされます。 また、コードをリファクタリングしたり、異なるファイル間で移動したり、コードの構造を認識したりするためのツールも提供されます。 詳細については、コードの作成とリファクタリングに関するページを参照してください。

リソースの追加と編集

通常、Windows プログラムや DLL には、ダイアログ、アイコン、画像、ローカライズ可能な文字列、スプラッシュ画面、データベースの接続文字列、または任意のデータなど、いくつかの "リソース" が含まれます。 Visual Studio には、リソースの追加や編集を行うためのツールが含まれています。 詳細については、「リソース ファイルの操作」をご覧ください。

メニュー バーの [ビルド]>[ソリューションのビルド] を選択するか、Ctrl + Shift + B キーの組み合わせを押して、プロジェクトのコンパイルおよびリンクを行います。 ビルド エラーと警告は、[エラー一覧] (Ctrl+\、E) に報告されます。 [出力] ウィンドウ (Alt + 2) にビルド プロセスに関する情報が表示されます。

[出力] ウィンドウとエラー一覧のスクリーンショット。

ビルドの構成の詳細については、プロジェクト プロパティの操作に関するページとプロジェクトとビルド システムに関するページを参照してください。

コンパイラ (cl.exe) や、その他多くのビルド関連のスタンドアロン ツール (コマンド ラインから直接入力する NMAKE や LIB など) も使用できます。 詳細については、「コマンドラインでの C/C++ コードのビルド」と「C/C++ ビルドのリファレンス」を参照してください。

デバッグ

[F5] を押すことでデバッグを開始できます。 (F9 キーを押して) 設定した任意のブレークポイントで、実行を一時停止することができます。 また、コードを一度に 1 行ずつステップ実行したり (F10 キー)、変数やレジスタの値を表示したり、場合によってはコードに変更を加え、再コンパイルせずにデバッグを続行したりできます。 次の図は、ブレークポイントで実行が停止したデバッグ セッションを示しています。 データ構造体メンバーの値はウォッチ ウィンドウに表示されます。

デバッグ セッションのスクリーンショット。

詳しくは、「Visual Studio でのデバッグ」をご覧ください。

テスト

Visual Studio には、C++ 用の Microsoft 単体テスト フレームワークおよび Boost.Test、Google Test、CTest のサポートが含まれます。 テスト エクスプローラー ウィンドウからテストを実行します。

テスト エクスプローラーのスクリーンショット。

詳細については、単体テストを使用してコードを検証する方法に関するページと「Visual Studio で C/C++ 用の単体テストを作成する」を参照してください。

解析

Visual Studio には、ソース コードの潜在的な問題を検出できる静的コード分析ツールが含まれています。 それらのツールには、C++ Core Guidelines ルール チェッカーの実装が含まれています。 詳細については、「C/C++ のコード分析の概要」を参照してください。

完成したアプリケーションの配置

Microsoft Store から従来のデスクトップ アプリケーションと UWP アプリの両方を展開できます。 CRT の配置は、水面下で自動的に処理されます。 詳細については、「Publish Windows apps and games」(Windows のアプリとゲームを公開する) を参照してください。

また、ネイティブ C++ デスクトップを別のコンピューターに配置することもできます。 詳細については、「デスクトップ アプリケーションの配置」を参照してください。

C++/CLI プログラムの配置について詳しくは、「配置ガイド (開発者向け)」を参照してください。

次の手順

以下の入力記事のいずれかに従って、Visual Studio をさらに詳しく調べます。