Поделиться через


Управление версиями компилятора Microsoft C++ (MSVC)

Версия компилятора Microsoft C++ (MSVC) состоит из четырех полей:

M — основная версия (две цифры)
N - дополнительная версия (две цифры)
B — версия сборки (пять цифр)
R — версия редакции

Макросы компилятора, относящиеся к Корпорации Майкрософт, кодируют следующие поля:

_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. Чтобы отличить их, используйте _MSC_FULL_VER , как описано в выпусках служб, начиная с Visual Studio 2017.

Краткий журнал версий компилятора 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 увеличивается на 1000 000.

    Note

    Visual Studio .NET 2003 считается дополнительным выпуском.

Visual Studio 2017 — Visual Studio 2022

  • Для крупных выпусков дополнительная версия увеличивается на 10.
  • Для дополнительных выпусков дополнительная версия увеличивается на 1 начиная с Visual Studio 2017 версии 15.3.

Visual Studio 2026 и более поздних версий

  • Подверсия компилятора больше не увеличивается при обновлениях Visual Studio.
  • Минорная версия увеличивается на 1 с каждым новым выпуском MSVC.
  • Не каждая новая версия Visual Studio будет отправлять новую версию компилятора MSVC.

Выпуски служб, начиная с Visual Studio 2017

Выпуски обслуживания различаются по _MSC_FULL_VER. Поле сборки (BBBBB в номере версии MMNNBBBBB) обычно увеличивается на 1.

Например, в двух случаях _MSC_FULL_VER полезно различать Visual Studio 2019 версии 16.8 от 16.9 и Visual Studio 2019 версии 16.10 от 16.11. Это связано с тем, что эти версии используют одни и те же основные и дополнительные версии, и поэтому имеют то же значение для _MSC_VER.

Чтобы отличить эти версии, используйте _MSC_FULL_VER.
Минимальное значение _MSC_FULL_VER для Visual Studio 2019 версии 16.8 равно 192829333.
Минимальное значение _MSC_FULL_VER для Visual Studio 2019 версии 16.9 равно 192829910.

Макросы версии

Помните, что номер версии состоит из четырех полей:

M — основная версия (две цифры)
N - дополнительная версия (две цифры)
B — версия сборки (пять цифр)
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 до версии 17.2. В этом случае изменилось _MSC_VER с 1931 по 1932 год.

В следующей таблице перечислены версии Visual Studio, соответствующие каждому выпуску компилятора_MSC_VER Microsoft C++ и средств сборки MSVC:

Версия Visual Studio _MSC_VER Версия средств сборки 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 версия 15.3 1911 14.11
Visual Studio 2017 версии 15.5 1912 14.12
Visual Studio 2017 версии 15.6 1913 14.13
Visual Studio 2017 версии 15.7 1914 14.14
Visual Studio 2017 версии 15.8 1915 14.15
Visual Studio 2017 версии 15.9 1916 14.16
Visual Studio 2019 RTW 16.0 1920 14.20
Visual Studio 2019 версии 16.1 1921 14.21
Visual Studio 2019 версии 16.2 1922 14.22
Visual Studio 2019 версии 16.3 1923 14.23
Visual Studio 2019 версия 16.4 1924 14.24
Visual Studio 2019, версия 16.5 1925 14.25
Visual Studio 2019 версии 16.6 1926 14.26
Visual Studio 2019 версии 16.7 1927 14.27
Visual Studio 2019 версии 16.8, 16.9 a 1928 14.28
Visual Studio 2019 версии 16.10, 16.11 b 1929 14.29
Visual Studio 2022 RTW 17.0 1930 14.30
Visual Studio 2022 версии 17.1 1931 14.31
Visual Studio 2022 версии 17.2 1932 14.32
Visual Studio 2022 версии 17.3 1933 14.33
Visual Studio 2022 версии 17.4 1934 14.34
Visual Studio 2022 версии 17.5 1935 14.35
Visual Studio 2022 версии 17.6 1936 14.36
Visual Studio 2022 версии 17.7 1937 14.37
Visual Studio 2022 версии 17.8 1938 14.38
Visual Studio 2022 версии 17.9 1939 14.39
Visual Studio 2022 версии 17.10 1940 14.40
Visual Studio 2022 версии 17.11 1941 14.41
Visual Studio 2022 версии 17.12 1942 14.42
Visual Studio 2022 версии 17.13 1943 14.43
Visual Studio 2022 версии 17.14 1944 14.44

Visual Studio 2019 версии 16.8 и 16.9 имеют одинаковые основные и минорные версии, поэтому у них одинаковое значение для _MSC_VER. Чтобы отличить их, используйте _MSC_FULL_VER. Минимальное значение _MSC_FULL_VER для Visual Studio 2019 версии 16.8 равно 192829333. Минимальное значение _MSC_FULL_VER для Visual Studio 2019 версии 16.9 равно 192829910.

b Visual Studio 2019 версии 16.10 и 16.11 совместно используют одни и те же основные и дополнительные версии (и поэтому имеют одинаковое значение для _MSC_VER). Чтобы отличить их, используйте _MSC_FULL_VER. Минимальное значение _MSC_FULL_VER для Visual Studio 2019 версии 16.10 равно 192929917. Минимальное значение _MSC_FULL_VER для Visual Studio 2019 версии 16.11 равно 192930129.

См. также

_MSC_VER
Запись блога о версии компилятора Visual C++