次の方法で共有


Microsoft Visual C++ コンパイラのバージョン管理

Microsoft Visual C++ コンパイラ バージョンは、次の 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 以降の Service リリースで説明されているように_MSC_FULL_VERを使用します。

Visual 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 以降

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

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

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

たとえば、 _MSC_FULL_VER が役立つ 2 つのケースは、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。

バージョン マクロ

バージョン番号は次の 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 以降の Service リリース を参照してください。

_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 年に変更されました。

次の表に、各 Visual Studio リリースの Visual C++ コンパイラ _MSC_VER を示します。

Visual Studio のバージョン _MSC_VER
Visual Studio 6.0 1200
Visual Studio .NET 2002 (7.0) 1300
Visual Studio .NET 2003 (7.1) 1,310
Visual Studio 2005 (8.0) 1400
Visual Studio 2008 (9.0) 1500
Visual Studio 2010 (10.0) 1600
Visual Studio 2012 (11.0) 1,700
Visual Studio 2013 (12.0) 1800
Visual Studio 2015 (14.0) 1900
Visual Studio 2017 RTW (15.0) 1910
Visual Studio 2017 バージョン 15.3 1911
Visual Studio 2017 バージョン 15.5 1912
Visual Studio 2017 バージョン 15.6 1913
Visual Studio 2017 バージョン 15.7 1914
Visual Studio 2017 バージョン 15.8 19:15
Visual Studio 2017 バージョン 15.9 19:16
Visual Studio 2019 RTW 16.0 1920
Visual Studio 2019 バージョン 16.1 21:19
Visual Studio 2019 バージョン 16.2 22:19
Visual Studio 2019 (バージョン 16.3) 1923
Visual Studio 2019 バージョン 16.4 1924
Visual Studio 2019 バージョン 16.5 1925
Visual Studio 2019 バージョン 16.6 19:26
Visual Studio 2019 バージョン 16.7 1,927
Visual Studio 2019 バージョン 16.8、16.9 a 1,928
Visual Studio 2019 バージョン 16.10、16.11 b 19:29
Visual Studio 2022 RTW 17.0 1930
Visual Studio 2022 バージョン 17.1 1,931
Visual Studio 2022 バージョン 17.2 1932
Visual Studio 2022 (バージョン 17.3) 1,933
Visual Studio 2022 バージョン 17.4 1,934
Visual Studio 2022 バージョン 17.5 19:35
Visual Studio 2022 バージョン 17.6 1,936
Visual Studio 2022 バージョン 17.7 1,937
Visual Studio 2022 バージョン 17.8 1938
Visual Studio 2022 バージョン 17.9 1939
Visual Studio 2022 バージョン 17.10 1,940

a 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。

関連項目

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