Microsoft C++ (MSVC) コンパイラのバージョン管理

Microsoft C++ (MSVC) コンパイラ バージョンは、次の 4 つのフィールドで構成されます。

M - メジャー バージョン (2 桁)
N - マイナー バージョン (2 桁)
B - ビルド バージョン (5 桁)
R - リビジョン バージョン

Microsoft 固有のコンパイラ マクロは、次のようにこれらのフィールドをエンコードします。

_MSC_VER = MMNN
_MSC_FULL_VER = MMNNBBBBB
_MSC_BUILD = R

たとえば、Visual Studio 2022 バージョン 17.9.0 のコンパイラ バージョンは 19.39.33519 です。

  • メジャー バージョンは 19 です
  • マイナー バージョンは 39 です
  • ビルド バージョンは 33519 です
  • リビジョン バージョンは 0 です

マクロには、次のような値が反映されます。

  • _MSC_VER = 1939
  • _MSC_FULL_VER = 193933519
  • _MSC_BUILD (リビジョン) は 0 です。

Note

Visual Studio 2019 バージョン 16.8 と 16.9 は同じメジャー バージョンとマイナー バージョンを共有するため、 _MSC_VERの値も同じです。 Visual Studio 2019 バージョン 16.10 および 16.11 と同様です。 それらを区別するには、Visual Studio 2017 以降の _MSC_FULL_VER で説明されているように を使用します。

Visual Studio チャネル

すべての MSVC ビルド ツールは、Visual Studio インストーラーから入手できます。

Visual Studio Stable Channel は毎月の更新プログラムを取得し、サポートされている最新の MSVC ビルド ツールを含みます。 Visual Studio Insider チャネルの更新が頻繁に行われるので、今後の MSVC の変更をより早く試すことができます。 リリース 周期の詳細については、Visual Studio 2026 リリース リズム および Visual Studio Insiders リリース ノートを参照してください。

各Visual Studio更新プログラムは、すべての MSVC ビルド ツールセットの更新プログラムを受け取ります。

  • プレビュー ツールセットは、以前の更新以降に開発チームが完了した新機能と修正プログラムを受け取ります。
  • 既定および以前のサポート内ツールセットは、対象となるバグ修正のみを受け取ります。

Visual Studio Insider ユーザーは MSVC リリースに早期にアクセスできます。

  • Insider チャネルでは、プレビュー ツールセットは約毎週更新されます。
  • Insider チャネルでは、安定チャネルに到達する約 1 か月前に新しいツールセットをリリース候補として利用でき、Insider ユーザーはツールセットを検証して問題を報告する時間を確保できます。

特定の MSVC ツールセットをインストールする

  • 既定の MSVC ツールセットのみをインストールするには、 Desktop development with C++ ワークロードをインストールします。
  • プレビュー ツールセットをインストールするには、Visual Studio インストーラーを実行し、arch (プレビュー) 用の MSVC ビルド ツールを選択します。 詳細については、「 MSVC ビルド ツールプレビュー」を参照してください。
  • 以前のサポート内 14.5x ツールセットをインストールするには、Visual Studio インストーラーを実行し、Individual Components タブを開き、特定の 14.5x ツールセットを選択します。
  • アップグレード後に以前にインストールしたツールセットを復元するには (たとえば、14.50 が 14.51 に置き換えられた場合)、以前のツールセットを [個々の コンポーネント] タブから再度追加します。
  • 完全なVisual Studio IDEなしでビルド ツールのみをインストールするには、Visual Studio Stable Build Tools SKU を使用します。
  • 一部のサポート外ツールセット ((サポート対象外)) は、Visual Studio インストーラーでも使用できます。 これらのツールセットは更新プログラムを受け取らないので、今後削除される可能性があります。 サポートされているバージョンに移行することを強くお勧めします。

バージョン マクロ

バージョン番号は次の 4 つのフィールドで構成されていることを再確認してください。

M - メジャー バージョン (2 桁)
N - マイナー バージョン (2 桁)
B - ビルド バージョン (5 桁)
R - リビジョン バージョン

_MSC_VER は、メジャー リリースとマイナー リリースを区別します。 形式: MMNN。

_MSC_FULL_VER は、コンパイラのメジャー バージョン、マイナー バージョン、ビルド バージョンを表します。 形式: MMNNBBBBB。 これを使用して、サービス リリースなど、コンパイラのさまざまなバージョンを区別します。 Visual Studio 2019 バージョン 16.8、16.9、16.10、16.11 の詳細については、「 Visual Studio 2017 以降のサービス リリース」を参照してください。

_MSC_BUILD は、コンパイラのリビジョン バージョンを表します。 R という形式があります。コンパイラのリビジョンを区別するために使用します。

Visual Studio 2013 と Visual Studio 2015 の間でメジャー バージョンが変更されたとき、_MSC_VER は 1800 から 1900 に変更を反映しました。

小さな変更の例として、Visual Studio 2022 バージョン 17.1 から Visual Studio 2022 バージョン 17.2 への変更があります。 その場合、_MSC_VER は 1931 から 1932 に変更されました。

次の表に、各 MSVC コンパイラ (_MSC_VER) と MSVC ビルド ツールのリリースに対応するVisual Studioバージョンと、サポート状態を示します。 EOL は寿命を意味します。

Visual Studio のバージョン _MSC_VER MSVC ビルド ツールのバージョン Support 詳細情報
Visual Studio 6.0 1200 6.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio .NET 2002 (7.0) 1300 7.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio .NET 2003 (7.1) 1310 7.1 EOL Visual Studioライフサイクル ポリシー
Visual Studio 2005 (8.0) 1400 8.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio 2008 (9.0) 1500 9.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio 2010 (10.0) 1600 10.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio 2012 (11.0) 1700 11.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio 2013 (12.0) 1800 12.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio 2015 (14.0) 1900 14.0 EOL Visual Studioライフサイクル ポリシー
Visual Studio 2017 RTW (15.0) 1910 14.10 EOL Visual Studio 2017 ライフサイクル
Visual Studio 2017 バージョン 15.3 1911 14.11 EOL Visual Studio 2017 ライフサイクル
Visual Studio 2017 バージョン 15.5 1912 14.12 EOL Visual Studio 2017 ライフサイクル
Visual Studio 2017 バージョン 15.6 1913 14.13 EOL Visual Studio 2017 ライフサイクル
Visual Studio 2017 バージョン 15.7 1914 14.14 EOL Visual Studio 2017 ライフサイクル
Visual Studio 2017 バージョン 15.8 1915 14.15 EOL Visual Studio 2017 ライフサイクル
Visual Studio 2017 バージョン 15.9 1916 14.16 2027 年 4 月 13 日 Visual Studio 2017 ライフサイクル
Visual Studio 2019 RTW (16.0) 1920 14.20 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.1 1921 14.21 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.2 1922 14.22 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.3 1923 14.23 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.4 1924 14.24 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.5 1925 14.25 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.6 1926 14.26 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.7 1927 14.27 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.8、16.9 a 1928 14.28 EOL Visual Studio 2019 のライフサイクル
Visual Studio 2019 バージョン 16.10、16.11 b 1929 14.29 2029 年 4 月 10 日 Visual Studio 2019 のライフサイクル
Visual Studio 2022 RTW 17.0 1930 14.30 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.1 1931 14.31 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.2 1932 14.32 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.3 1933 14.33 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.4 1934 14.34 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.5 1935 14.35 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.6 1936 14.36 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.7 1937 14.37 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.8 1938 14.38 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.9 1939 14.39 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.10 1940 14.40 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.11 1941 14.41 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.12 1942 14.42 2026 年 7 月 14 日 Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.13 1943 14.43 EOL Visual Studio 2022 のライフサイクル
Visual Studio 2022 バージョン 17.14 1944 14.44 2032 年 1 月 13 日 Visual Studio 2022 のライフサイクル

次の表に、Visual Studio 2026 以降の MSVC ビルド ツールのバージョンを示します。 Visual Studio 2026 以降、MSVC のバージョン管理はVisual Studioバージョン管理から切り離されています。 EOL (有効期限) の日付は、 MSVC ライフサイクル ポリシーによって定義されます。

MSVC ビルド ツールのバージョン _MSC_VER Support EOL日付 詳細情報
14.50 1950 長期的 2028 年 11 月 Visual Studio 2026 バージョン 18.0
14.51 1951 Standard 2027 年 2 月 MSVC ライフサイクル ポリシー
14.52 1952 Standard プレビューc MSVC ライフサイクル ポリシー

Visual Studio 2019 バージョン 16.8 および 16.9 は、同じメジャー バージョンとマイナー バージョンを共有します ( _MSC_VERの値も同じです)。 それらを区別するには、_MSC_FULL_VER を使用します。 Visual Studio 2019 バージョン 16.8 の _MSC_FULL_VER の最小値は192829333。 Visual Studio 2019 バージョン 16.9 の _MSC_FULL_VER の最小値は192829910。

b Visual Studio 2019 バージョン 16.10 および 16.11 は、同じメジャー バージョンとマイナー バージョンを共有します ( _MSC_VERの値も同じです)。 それらを区別するには、_MSC_FULL_VER を使用します。 Visual Studio 2019 バージョン 16.10 の _MSC_FULL_VER の最小値は192929917。 Visual Studio 2019 バージョン 16.11 の _MSC_FULL_VER の最小値は192930129。

c MSVC ビルド ツール バージョン 14.52 はプレビュー段階です。 EOL の日付は、一般公開時に設定されます。

Microsoft C++ コンパイラのバージョン管理の簡単な履歴

Visual Studio 6.0 から Visual Studio 2015 (14.0)

  • メジャー リリースの場合、_MSC_VER は 100 ずつ増加します。 _MSC_FULL_VER は 10,000,000 ずつ増加します。

  • マイナー リリースの場合、_MSC_VER は 10 ずつ増加します。 _MSC_FULL_VER は 1,000,000 ずつ増加します。

    Note

    Visual Studio .NET 2003 はマイナー リリースと見なされていました。

Visual Studio 2017 から Visual Studio 2022

  • メジャー リリースの場合、マイナー バージョンは 10 ずつ増加します。
  • マイナー リリースの場合、マイナー バージョンは Visual Studio 2017 バージョン 15.3 以降で 1 ずつ増加します。

Visual Studio 2026 以降

Visual Studio 2026 以降に付属する MSVC ビルド ツールはバージョン 14.50 から始まり、_MSC_VER は 1950 から始まります。 新しい MSVC バージョン (14.51/1951、14.52/1952 など) は、6 か月ごとに出荷されます。 サポートは 、MSVC ライフサイクル ポリシーに従います。

このバージョン管理システムは、MSVC のバージョン管理がVisual Studioバージョン管理とは別に行われるようになったため、以前のVisual Studio リリースとは異なります。 つまり、コンパイラのマイナー バージョンは、複数のVisual Studio更新で同じままにすることができます。

Visual Studio インストーラーは、いつでもいくつかの MSVC バージョンを提供できます。

  • 最新の変更を含むプレビュー ツールセット
  • 現在の既定のツールセット
  • まだサポートされている以前のツールセット

たとえば、2026 年 5 月の時点では次のようになります。

  • 14.52 はプレビュー ツールセットであり、定期的な機能を取得し、更新プログラムを修正します。
  • 14.51 は、 2026 年 5 月にリリースされた既定のツールセットであり、サポート期間は 9 か月です。
  • 14.50 は、2025 年 11 月にリリースされたツールセットで、3 年間のサポートが提供されています。

2026 年 11 月までに、 14.53 が新しいプレビュー ツールセットになり、 14.52 が 既定のツールセットになり、 14.5114.50MSVC ライフサイクル ポリシーの下で引き続きサポートされる予定です。

Microsoft次の 3 つの理由から、このモデルに変更されました。

  • MSVC 機能の開発とプレビューの可用性の間の時間を数か月から 1 週間程度に短縮します。
  • MSVC のリリース サイクルを Visual Studio に合わせるとともに、長期サービス リリースを .NET の長期サポート (LTS) リリースに合わせています。
  • これにより、古いコンパイラのサービスの複雑さが軽減されます。

Visual Studio 2017 以降のサービス リリース

サービス リリースを区別するには、 _MSC_FULL_VER を使用します。 通常、ビルド フィールド (MMNNBBBBB バージョン番号の BBBBB) は 1 ずつ増加します。

たとえば、_MSC_FULL_VER は、Visual Studio 2019 バージョン 16.8 と 16.9、Visual Studio 2019 バージョン 16.10 と 16.11 を区別するのに役立ちます。 これらのバージョンは同じメジャー バージョンとマイナー バージョンを共有するため、 _MSC_VERの値は同じです。

これらのバージョンを区別するには、_MSC_FULL_VER を使用します。
Visual Studio 2019 バージョン 16.8 の _MSC_FULL_VER の最小値は192829333。
Visual Studio 2019 バージョン 16.9 の _MSC_FULL_VER の最小値は192829910。

こちらも参照ください

_MSC_VER
Visual C++ コンパイラ バージョンのブログ投稿