Przechowywanie wersji kompilatora programu Microsoft Visual C++

Wersja kompilatora programu Microsoft Visual C++ składa się z czterech pól:

M — wersja główna (dwie cyfry)
N — wersja pomocnicza (dwie cyfry)
B — wersja kompilacji (pięć cyfr)
R — wersja poprawki

Makra kompilatora specyficzne dla firmy Microsoft kodują następujące pola:

_MSC_VER = MMNN
_MSC_FULL_VER = MMNNBBBBB
_MSC_BUILD = R

Na przykład wersja kompilatora programu Visual Studio 2022 w wersji 17.9.0 to 19.39.33519:

  • Wersja główna to 19
  • Wersja pomocnicza to 39
  • Wersja kompilacji to 33519
  • Wersja poprawki to 0

Makra odzwierciedlają następujące wartości w następujący sposób:

  • _MSC_VER = 1939
  • _MSC_FULL_VER = 193933519
  • _MSC_BUILD (poprawka) to 0.

Uwaga

Programy Visual Studio 2019 16.8 i 16.9 współdzielą te same wersje główne i pomocnicze, dlatego mają tę samą wartość dla programu _MSC_VER. Podobnie jak w programie Visual Studio 2019 16.10 i 16.11. Aby je odróżnić, użyj polecenia _MSC_FULL_VER zgodnie z opisem w temacie Wersje usługi, począwszy od programu Visual Studio 2017.

Krótka historia przechowywania wersji kompilatora Visual C++

Visual Studio 6.0 do Visual Studio 2015 (14.0)

  • W przypadku wersji głównych _MSC_VER zwiększa się o 100. _MSC_FULL_VER zwiększa się o 10 000 000.

  • W przypadku wersji _MSC_VER pomocniczych zwiększa się o 10. _MSC_FULL_VER zwiększa się o 1000 000.

    Uwaga

    Program Visual Studio .NET 2003 został uznany za wydanie pomocnicze.

Program Visual Studio 2017 lub nowszy

  • W przypadku wersji głównych wersja pomocnicza zwiększa się o 10.
  • W przypadku wersji pomocniczych wersja pomocnicza zwiększa się o 1, począwszy od programu Visual Studio 2017 w wersji 15.3.

Wersje usługi począwszy od programu Visual Studio 2017

Wersje obsługi można odróżnić od _MSC_FULL_VER. Pole kompilacji (BBBBB w numerze wersji MMNNBBBBB) zwykle zwiększa się o 1.

Na przykład dwa przypadki, w których _MSC_FULL_VER przydatne jest odróżnienie programu Visual Studio 2019 16.8 z wersji 16.9 i Visual Studio 2019 16.10 z wersji 16.11. Dzieje się tak dlatego, że te wersje mają te same wersje główne i pomocnicze, a więc mają tę samą wartość dla programu _MSC_VER.

Aby odróżnić te wersje, użyj polecenia _MSC_FULL_VER.
Minimalna wartość _MSC_FULL_VER programu Visual Studio 2019 16.8 jest 192829333.
Minimalna wartość _MSC_FULL_VER programu Visual Studio 2019 16.9 jest 192829910.

Makra wersji

Przypomnij sobie, że numer wersji składa się z czterech pól:

M — wersja główna (dwie cyfry)
N — wersja pomocnicza (dwie cyfry)
B — wersja kompilacji (pięć cyfr)
R — wersja poprawki

_MSC_VER rozróżnia wersje główne i pomocnicze. Ma ona postać: MMNN.

_MSC_FULL_VER reprezentuje wersję główną, pomocniczą i kompilację kompilatora. Ma postać: MMNNBBBBB. Służy do rozróżniania różnych wersji kompilatora, w tym wersji obsługi. Aby uzyskać więcej informacji na temat programu Visual Studio 2019 16.8, 16.9, 16.10 i 16.11, zobacz Wersje usług rozpoczynające się od programu Visual Studio 2017 .

_MSC_BUILD reprezentuje wersję kompilacji kompilatora. Ma on postać: R. Użyj go, aby odróżnić wersje obsługi.

Gdy wersja główna została zmieniona między programem Visual Studio 2013 a programem Visual Studio 2015, _MSC_VER odzwierciedliła zmianę z 1800 do 1900.

Przykładem drobnej zmiany jest program Visual Studio 2022 w wersji 17.1 do programu Visual Studio 2022 17.2. W takim przypadku _MSC_VER zmieniono z 1931 na 1932.

W poniższej tabeli wymieniono kompilator _MSC_VER Visual C++ dla każdej wersji programu Visual Studio:

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

Program Visual Studio 2019 16.8 i 16.9 współużytkuje te same wersje główne i pomocnicze (a więc mają tę samą wartość dla _MSC_VERprogramu ). Aby je odróżnić, użyj polecenia _MSC_FULL_VER. Minimalna wartość _MSC_FULL_VER programu Visual Studio 2019 16.8 jest 192829333. Minimalna wartość _MSC_FULL_VER programu Visual Studio 2019 16.9 jest 192829910.

b Program Visual Studio 2019 16.10 i 16.11 współużytkuje te same wersje główne i pomocnicze (a więc mają tę samą wartość dla _MSC_VERprogramu ). Aby je odróżnić, użyj polecenia _MSC_FULL_VER. Minimalna wartość _MSC_FULL_VER programu Visual Studio 2019 16.10 jest 192929917. Minimalna wartość _MSC_FULL_VER programu Visual Studio 2019 16.11 jest 192930129.

Zobacz też

_MSC_VER
Wpis w blogu dotyczącym wersji kompilatora visual C++