Partilhar via


Controle de versão do compilador do Microsoft Visual C++

A versão do compilador do Microsoft Visual C++ consiste em quatro campos:

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

As macros de 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 Visual Studio 2022 versão 17.9.0 é 19.39.33519:

  • A versão principal é 19
  • A versão secundária é 39
  • A versão de compilação é 33519
  • A versão de revisão é 0

As macros refletem estes valores da seguinte forma:

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

Observação

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

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

Visual Studio 6.0 até Visual Studio 2015 (14.0)

  • Para lançamentos importantes, _MSC_VER aumenta em 100. _MSC_FULL_VER aumenta em 10.000.000.

  • Para lançamentos menores, _MSC_VER aumenta em 10 unidades. _MSC_FULL_VER aumenta em 1.000.000.

    Observação

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

Visual Studio 2017 e posterior

  • Para lançamentos maiores, a versão secundária aumenta em 10.
  • Para atualizações menores, a versão secundária aumenta em 1 a partir do Visual Studio 2017 versão 15.3.

Versões de serviço a partir do Visual Studio 2017

As versões de manutenção distinguem-se por _MSC_FULL_VER. O campo de compilação (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 16.8 da 16.9 e o Visual Studio 2019 16.10 da 16.11. Isso 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 de _MSC_FULL_VER para Visual Studio 2019 16.8 é 192829333.
O valor mínimo de _MSC_FULL_VER para Visual Studio 2019 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 build (cinco dígitos)
R - versão de revisão

_MSC_VER distingue entre lançamentos maiores e menores. Tem a forma: MMNN.

_MSC_FULL_VER representa a versão principal, secundária e build do compilador. Tem a forma: 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 16.8, 16.9, 16.10 e 16.11, consulte Service releases starting with Visual Studio 2017.

_MSC_BUILD representa a versão de compilação do compilador. Tem a forma: R. Use-o para distinguir entre liberaçõ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 uma pequena alteração é do Visual Studio 2022 17.1 para o Visual Studio 2022 17.2. Nesse caso, _MSC_VER mudou de 1931 para 1932.

A tabela a seguir lista o compilador do Visual C++ _MSC_VER para cada versão do Visual Studio:

Versão do Visual Studio _MSC_VER
Visual Studio 6.0 1200
Visual Studio .NET 2002 (7.0) 1300
Visual Studio .NET 2003 (7.1) 1310
Visual Studio 2005 (8.0) 1400
Visual Studio 2008 (9.0) 1500
Visual Studio 2010 (10.0) 1600
Visual Studio 2012 (11.0) 1700
Visual Studio 2013 (12.0) 1800
Visual Studio 2015 (14.0) 1900
Visual Studio 2017 RTW (15.0) 1910
Visual Studio 2017 versão 15.3 1911
Visual Studio 2017 versão 15.5 1912
Visual Studio 2017 versão 15.6 1913
Visual Studio 2017 versão 15.7 1914
Visual Studio 2017 versão 15.8 1915
Visual Studio 2017 versão 15.9 1916
Visual Studio 2019 RTW 16.0 1920
Visual Studio 2019 versão 16.1 1921
Visual Studio 2019 versão 16.2 1922
Visual Studio 2019 versão 16.3 1923
Visual Studio 2019 versão 16.4 1924
Visual Studio 2019 versão 16.5 1925
Visual Studio 2019 versão 16.6 1926
Visual Studio 2019 versão 16.7 1927
Visual Studio 2019 versão 16.8, 16.9 a 1928
Visual Studio 2019 versão 16.10, 16.11 b 1929
Visual Studio 2022 RTW 17.0 1930
Visual Studio 2022 versão 17.1 1931
Visual Studio 2022 versão 17.2 1932
Visual Studio 2022 versão 17.3 1933
Visual Studio 2022 versão 17.4 1934
Visual Studio 2022 versão 17.5 1935
Visual Studio 2022 versão 17.6 1936
Visual Studio 2022 versão 17.7 1937
Visual Studio 2022 versão 17.8 1938
Visual Studio 2022 versão 17.9 1939
Visual Studio 2022 versão 17.10 1940
Visual Studio 2022 versão 17.11 1941
Visual Studio 2022 versão 17.12 1942
Visual Studio 2022 versão 17.13 1943
Visual Studio 2022 versão 17.14 1944

a Visual Studio 2019 16.8 e 16.9 compartilham as mesmas versões principais e secundárias e, portanto, têm o mesmo valor para _MSC_VER. Para distingui-los, use _MSC_FULL_VER. O valor mínimo de _MSC_FULL_VER para Visual Studio 2019 16.8 é 192829333. O valor mínimo de _MSC_FULL_VER para Visual Studio 2019 16.9 é 192829910.

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

Ver também

_MSC_VER
Publicação de blog sobre a versão do compilador Visual C++