Compartilhar via


Controle de versão do compilador do Microsoft C++ (MSVC)

A versão do compilador do Microsoft C++ (MSVC) consiste em quatro campos:

M - versão principal (dois dígitos)
N - versão secundária (dois dígitos)
B - versão do build (cinco dígitos)
R - versão de revisão

As macros do compilador específicas da Microsoft codificam esses campos da seguinte maneira:

_MSC_VER = MMNN
_MSC_FULL_VER = MMNNBBBBB
_MSC_BUILD = R

Por exemplo, a versão do compilador para o Visual Studio 2022 versão 17.9.0 é 19.39.33519:

  • A a versão principal é a 19
  • A versão secundária é a 39
  • A versão de build é 33519
  • A versão da revisão é 0

As macros refletem esses valores da seguinte forma:

  • _MSC_VER = 1939
  • _MSC_FULL_VER = 193933519
  • _MSC_BUILD (a revisão) é 0.

Note

As versões 16.8 e 16.9 do Visual Studio 2019 compartilham as mesmas versões principais e secundárias e, portanto, têm o mesmo valor para _MSC_VER. Como nas versões 16.10 e 16.11 do Visual Studio 2019. Para distingui-los, use _MSC_FULL_VER conforme descrito em Versões de serviço a partir do Visual Studio 2017.

Um breve histórico do controle de versão do compilador do Microsoft C++

Visual Studio 6.0 até o Visual Studio 2015 (14.0)

  • Para as versões principais, _MSC_VER aumenta em 100. _MSC_FULL_VER aumenta em 10.000.000.

  • Para as versões secundárias, _MSC_VER aumenta em 10. _MSC_FULL_VER aumenta em 1.000.000.

    Note

    O Visual Studio .NET 2003 foi considerado uma versão secundária.

Visual Studio 2017 para Visual Studio 2022

  • Para versões principais, a versão secundária aumenta em 10.
  • Para versões secundárias, a versão secundária aumenta em 1 a partir do Visual Studio 2017 versão 15.3.

Visual Studio 2026 e posterior

  • A versão secundária do compilador não é mais incrementada em relação às atualizações de versão do Visual Studio.
  • A versão secundária incrementa em 1 com cada nova versão do MSVC.
  • Nem todas as novas versões do Visual Studio enviarão uma nova versão do compilador MSVC.

Versões de serviço começando com o Visual Studio 2017

As versões de manutenção distinguem-se por _MSC_FULL_VER. O campo de build (o BBBBB no número da versão MMNNBBBBB) normalmente aumenta em 1.

Por exemplo, dois casos em que _MSC_FULL_VER é útil é distinguir o Visual Studio 2019 versão 16.8 da 16.9 e o Visual Studio 2019 versão 16.10 da 16.11. Isso ocorre porque essas versões compartilham as mesmas versões principais e secundárias e, portanto, têm o mesmo valor para _MSC_VER.

Para distinguir essas versões, use _MSC_FULL_VER.
O valor mínimo do _MSC_FULL_VER Visual Studio 2019 versão 16.8 é 192829333.
O valor mínimo do _MSC_FULL_VER Visual Studio 2019 versão 16.9 é 192829910.

Macros de versão

Lembre-se de que o número da versão consiste em quatro campos:

M - versão principal (dois dígitos)
N - versão secundária (dois dígitos)
B - versão do build (cinco dígitos)
R - versão de revisão

_MSC_VER distingue entre as versões principais e as secundárias. Ela tem o formato: MMNN.

_MSC_FULL_VER representa a versão principal, secundária e de build do compilador. Ela tem o seguinte formato: MMNNBBBBB. Use-o para distinguir entre diferentes versões do compilador, incluindo versões de manutenção. Para obter mais informações sobre o Visual Studio 2019 versões 16.8, 16.9, 16.10 e 16.11, consulte as versões do Serviço começando com o Visual Studio 2017.

_MSC_BUILD representa a versão de build do compilador. Ela tem o formato: R. Use-a para distinguir entre as versões de manutenção.

Quando a versão principal foi alterada entre o Visual Studio 2013 e o Visual Studio 2015, _MSC_VER refletiu a alteração passando de 1800 para 1900.

Um exemplo de alteração secundária é do Visual Studio 2022 versão 17.1 para o Visual Studio 2022 versão 17.2. Nesse caso, _MSC_VER mudou de 1931 para 1932.

A tabela a seguir lista a versão do Visual Studio correspondente a cada compilador do Microsoft C++ (_MSC_VER) e à versão do MSVC Build Tools:

Versão do Visual Studio _MSC_VER Versão das Ferramentas de Build do MSVC
Visual Studio 6.0 1200 6.0
Visual Studio .NET 2002 (7.0) 1300 7.0
Visual Studio .NET 2003 (7.1) 1310 7.1
Visual Studio 2005 (8.0) 1400 8.0
Visual Studio 2008 (9.0) 1500 9.0
Visual Studio 2010 (10.0) 1600 10.0
Visual Studio 2012 (11.0) 1700 11.0
Visual Studio 2013 (12.0) 1800 12.0
Visual Studio 2015 (14.0) 1900 14.0
Visual Studio 2017 RTW (15.0) 1910 14.10
Visual Studio 2017 versão 15.3 1911 14.11
Visual Studio 2017 versão 15.5 1912 14.12
Visual Studio 2017 versão 15.6 1913 14.13
Visual Studio 2017 versão 15.7 1914 14.14
Visual Studio 2017 versão 15.8 1915 14.15
Visual Studio 2017 versão 15.9 1916 14.16
Visual Studio 2019 RTW 16.0 1920 14.20
Visual Studio 2019 versão 16.1 1921 14.21
Visual Studio 2019 versão 16.2 1922 14.22
Visual Studio 2019 versão 16.3 1923 14.23
Visual Studio 2019 versão 16.4 1924 14.24
Visual Studio 2019 versão 16.5 1925 14.25
Visual Studio 2019 versão 16.6 1926 14.26
Visual Studio 2019 versão 16.7 1927 14.27
Visual Studio 2019 versão 16.8, 16.9 a 1928 14,28
Visual Studio 2019 versão 16.10, 16.11 b 1929 14.29
Visual Studio 2022 RTW 17.0 1930 14.30
Visual Studio 2022 versão 17.1 1931 14.31
Visual Studio 2022 versão 17.2 1932 14.32
Visual Studio 2022 versão 17.3 1933 14.33
Visual Studio 2022 versão 17.4 1934 14.34
Visual Studio 2022 versão 17.5 1935 14.35
Visual Studio 2022 versão 17.6 1936 14.36
Visual Studio 2022 versão 17.7 1937 14.37
Visual Studio 2022 versão 17.8 1938 14.38
Visual Studio 2022, Versão 17.9 1939 14.39
Visual Studio 2022 versão 17.10 1940 14.40
Visual Studio 2022 versão 17.11 1941 14.41
Visual Studio 2022 versão 17.12 1942 14.42
Visual Studio 2022 versão 17.13 1943 14.43
Visual Studio 2022 versão 17.14 1944 14.44

As versões 16.8 e 16.9 do Visual Studio 2019 têm a mesma versão principal e secundária (e, portanto, têm o mesmo valor para _MSC_VER). Para distingui-los, use _MSC_FULL_VER. O valor mínimo do _MSC_FULL_VER Visual Studio 2019 versão 16.8 é 192829333. O valor mínimo do _MSC_FULL_VER Visual Studio 2019 versão 16.9 é 192829910.

b As versões 16.10 e 16.11 do Visual Studio 2019 compartilham as mesmas versões principais e secundárias (e assim têm o mesmo valor para _MSC_VER). Para distingui-los, use _MSC_FULL_VER. O valor mínimo do _MSC_FULL_VER Visual Studio 2019 versão 16.10 é 192929917. O valor mínimo do _MSC_FULL_VER Visual Studio 2019 versão 16.11 é 192930129.

Consulte também

_MSC_VER
Postagem no blog da versão do compilador do Visual C++