Delen via


Versiebeheer voor Microsoft Visual C++-compiler

De microsoft Visual C++-compilerversie bestaat uit vier velden:

M - primaire versie (twee cijfers)
N - secundaire versie (twee cijfers)
B - build-versie (vijf cijfers)
R - revisieversie

Microsoft-specifieke compilermacro's coderen deze velden als volgt:

_MSC_VER = MMNN
_MSC_FULL_VER = MMNNBBBBB
_MSC_BUILD = R

De compilerversie voor Visual Studio 2022 versie 17.9.0 is bijvoorbeeld 19.39.33519:

  • De hoofdversie is 19
  • De secundaire versie is 39
  • De versienummer is 33519
  • De revisieversie is 0

De macro's weerspiegelen deze waarden als volgt:

  • _MSC_VER = 1939
  • _MSC_FULL_VER = 193933519
  • _MSC_BUILD (de revisie) is 0.

Notitie

Visual Studio 2019 16.8 en 16.9 delen dezelfde primaire en secundaire versies, en hebben dus dezelfde waarde voor _MSC_VER. Net als Visual Studio 2019 16.10 en 16.11. Als u deze wilt onderscheiden, gebruikt u _MSC_FULL_VER zoals beschreven in Service-releases vanaf Visual Studio 2017.

Een korte geschiedenis van versiebeheer van Visual C++-compiler

Visual Studio 6.0 tot en met Visual Studio 2015 (14.0)

  • Voor grote releases neemt _MSC_VER met 100 toe. _MSC_FULL_VER neemt toe met 10.000.000.

  • Bij minder belangrijke releases neemt _MSC_VER met 10 toe. _MSC_FULL_VER neemt toe met 1.000.000.

    Notitie

    Visual Studio .NET 2003 werd beschouwd als een secundaire release.

Visual Studio 2017 en hoger

  • Voor grote releases neemt de secundaire versie met 10 toe.
  • Voor kleine releases neemt de subversie met 1 toe vanaf Visual Studio 2017 versie 15.3.

Servicereleases vanaf Visual Studio 2017

Onderhoudsreleases worden onderscheiden door _MSC_FULL_VER. Het buildveld (de BBBBB in het versienummer MMNNBBBBB) neemt doorgaans met 1 toe.

Twee gevallen waarin _MSC_FULL_VER bijvoorbeeld handig is om Visual Studio 2019 16.8 te onderscheiden van 16.9 en Visual Studio 2019 16.10 van 16.11. Dat komt doordat deze versies dezelfde primaire en secundaire versies delen, en dus dezelfde waarde hebben voor _MSC_VER.

Gebruik _MSC_FULL_VERom deze versies te onderscheiden.
De minimumwaarde van _MSC_FULL_VER voor Visual Studio 2019 16,8 is 192829333.
De minimumwaarde van _MSC_FULL_VER voor Visual Studio 2019 16,9 is 192829910.

Versiemacro's

Zoals u weet, bestaat het versienummer uit vier velden:

M - primaire versie (twee cijfers)
N - secundaire versie (twee cijfers)
B - buildversie (vijf cijfers)
R - revisieversie

_MSC_VER onderscheidt tussen belangrijke en kleine releases. Het heeft de vorm: MMNN.

_MSC_FULL_VER vertegenwoordigt de primaire, secundaire en buildversie van de compiler. Het heeft de vorm: MMNNBBBBB. Gebruik het om onderscheid te maken tussen verschillende versies van de compiler, waaronder onderhoudsreleases. Zie voor meer informatie over Visual Studio 2019 16.8, 16.9, 16.10 en 16.11 Servicereleases beginnende met Visual Studio 2017.

_MSC_BUILD vertegenwoordigt de buildversie van de compiler. Het heeft de vorm: R. Gebruik deze om onderscheid te maken tussen onderhoudsreleases.

Toen de hoofdversie veranderde tussen Visual Studio 2013 en Visual Studio 2015, weerspiegelde _MSC_VER de wijziging door van 1800 naar 1900 te gaan.

Een voorbeeld van een kleine wijziging is van Visual Studio 2022 17.1 naar Visual Studio 2022 17.2. In dat geval is _MSC_VER gewijzigd van 1931 in 1932.

De volgende tabel bevat de Visual C++-compiler _MSC_VER voor elke Visual Studio-release:

Visual Studio-versie _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 versie 15.3 1911
Visual Studio 2017 versie 15.5 1912
Visual Studio 2017 versie 15.6 1913
Visual Studio 2017 versie 15.7 1914
Visual Studio 2017 versie 15.8 1915
Visual Studio 2017 versie 15.9 1916
Visual Studio 2019 RTW 16.0 1920
Visual Studio 2019 versie 16.1 1921
Visual Studio 2019 versie 16.2 1922
Visual Studio 2019 versie 16.3 1923
Visual Studio 2019 versie 16.4 1924
Visual Studio 2019 versie 16.5 1925
Visual Studio 2019 versie 16.6 1926
Visual Studio 2019 versie 16.7 1927
Visual Studio 2019 versie 16.8, 16.9 een 1928
Visual Studio 2019 versie 16.10, 16.11 b 1929
Visual Studio 2022 RTW 17.0 1930
Visual Studio 2022 versie 17.1 1931
Visual Studio 2022 versie 17.2 1932
Visual Studio 2022 versie 17.3 1933
Visual Studio 2022 versie 17.4 1934
Visual Studio 2022 versie 17.5 1935
Visual Studio 2022 versie 17.6 1936
Visual Studio 2022 versie 17.7 1937
Visual Studio 2022 versie 17.8 1938
Visual Studio 2022 versie 17.9 1939
Visual Studio 2022 versie 17.10 1940
Visual Studio 2022 versie 17.11 1941
Visual Studio 2022 versie 17.12 1942
Visual Studio 2022 versie 17.13 1943
Visual Studio 2022 versie 17.14 1944

en Visual Studio 2019 16.8 en 16.9 hebben dezelfde hoofd- en nevenversies (en hebben dus dezelfde waarde voor _MSC_VER). Gebruik _MSC_FULL_VERom ze te onderscheiden. De minimumwaarde van _MSC_FULL_VER voor Visual Studio 2019 16,8 is 192829333. De minimumwaarde van _MSC_FULL_VER voor Visual Studio 2019 16,9 is 192829910.

b Visual Studio 2019 16.10 en 16.11 dezelfde primaire en secundaire versies delen (en dus dezelfde waarde hebben voor _MSC_VER). Gebruik _MSC_FULL_VERom ze te onderscheiden. De minimumwaarde van _MSC_FULL_VER voor Visual Studio 2019 16.10 is 192929917. De minimumwaarde van _MSC_FULL_VER voor Visual Studio 2019 16.11 is 192930129.

Zie ook

_MSC_VER
blogbericht Visual C++-compilerversie