Penerapan versi kompilator Microsoft Visual C++
Versi kompilator Microsoft Visual C++ terdiri dari empat bidang:
M - versi utama (dua digit)
N - versi minor (dua digit)
B - versi build (lima digit)
R - versi revisi
Makro kompilator khusus Microsoft mengodekan bidang-bidang ini sebagai berikut:
_MSC_VER
= MMNN
_MSC_FULL_VER
= MMNNBBBBB
_MSC_BUILD
= R
Misalnya, versi kompilator untuk Visual Studio 2022 versi 17.9.0 adalah 19.39.33519:
- Versi utamanya adalah 19
- Versi minornya adalah 39
- Versi buildnya adalah 33519
- Versi revisi adalah 0
Makro mencerminkan nilai-nilai ini seperti ini:
_MSC_VER = 1939
_MSC_FULL_VER = 193933519
-
_MSC_BUILD
(revisi) adalah 0.
Catatan
Visual Studio 2019 16.8 dan 16.9 berbagi versi utama dan minor yang sama, sehingga memiliki nilai yang sama untuk _MSC_VER
. Seperti halnya Visual Studio 2019 16.10 dan 16.11. Untuk membedakannya, gunakan _MSC_FULL_VER
seperti yang dijelaskan dalam Rilis layanan yang dimulai dengan Visual Studio 2017.
Riwayat singkat penerapan versi kompilator Visual C++
Visual Studio 6.0 hingga Visual Studio 2015 (14.0)
Untuk rilis utama,
_MSC_VER
meningkat sebesar 100._MSC_FULL_VER
meningkat sebesar 10.000.000.Untuk rilis minor,
_MSC_VER
meningkat 10._MSC_FULL_VER
meningkat sebesar 1.000.000.Catatan
Visual Studio .NET 2003 dianggap sebagai rilis kecil.
Visual Studio 2017 dan yang lebih baru
- Untuk rilis utama, versi minor meningkat sebesar 10.
- Untuk rilis minor, versi minor meningkat 1 dimulai dengan Visual Studio 2017 versi 15.3.
Rilis layanan dimulai dengan Visual Studio 2017
Rilis layanan dibedakan oleh _MSC_FULL_VER
. Bidang build (BBBBB di nomor versi MMNNBBBBB) biasanya meningkat 1.
Misalnya, dua kasus di mana _MSC_FULL_VER
berguna adalah membedakan Visual Studio 2019 16.8 dari 16.9, dan Visual Studio 2019 16.10 dari 16.11. Itu karena versi tersebut memiliki versi utama dan minor yang sama, sehingga memiliki nilai yang sama untuk _MSC_VER
.
Untuk membedakan versi ini, gunakan _MSC_FULL_VER
.
Nilai _MSC_FULL_VER
minimum untuk Visual Studio 2019 16.8 adalah 192829333.
Nilai _MSC_FULL_VER
minimum untuk Visual Studio 2019 16,9 adalah 192829910.
Makro versi
Ingat bahwa nomor versi terdiri dari empat bidang:
M - versi utama (dua digit)
N - versi minor (dua digit)
B - versi build (lima digit)
R - versi revisi
_MSC_VER
membedakan antara rilis utama dan minor. Ini memiliki bentuk: MMNN.
_MSC_FULL_VER
mewakili versi utama, minor, dan build pengkompilasi. Ini memiliki bentuk: MMNNBBBBB. Gunakan untuk membedakan antara versi kompilator yang berbeda, termasuk rilis layanan. Untuk informasi selengkapnya tentang Visual Studio 2019 16.8, 16.9, 16.10 dan 16.11, lihat rilis Layanan yang dimulai dengan Visual Studio 2017.
_MSC_BUILD
mewakili versi build pengkompilasi. Ini memiliki formulir: R. Gunakan untuk membedakan antara rilis layanan.
Ketika versi utama berubah antara Visual Studio 2013 dan Visual Studio 2015, _MSC_VER
mencerminkan perubahan dengan beralih dari 1800 ke 1900.
Contoh perubahan kecil adalah dari Visual Studio 2022 17.1 ke Visual Studio 2022 17.2. Dalam hal ini, _MSC_VER
berubah dari 1931 menjadi 1932.
Tabel berikut mencantumkan pengkompilasi _MSC_VER
Visual C++ untuk setiap rilis Visual Studio:
Versi 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 versi 15.3 | 1911 |
Visual Studio 2017 versi 15.5 | 1912 |
Visual Studio 2017 versi 15.6 | 1913 |
Visual Studio 2017 versi 15.7 | 1914 |
Visual Studio 2017 versi 15.8 | 1915 |
Visual Studio 2017 versi 15.9 | 1916 |
Visual Studio 2019 RTW 16.0 | 1920 |
Visual Studio 2019 versi 16.1 | 1921 |
Visual Studio 2019 versi 16.2 | 1922 |
Visual Studio 2019 versi 16.3 | 1923 |
Visual Studio 2019 versi 16.4 | 1924 |
Visual Studio 2019 versi 16.5 | 1925 |
Visual Studio 2019 versi 16.6 | 1926 |
Visual Studio 2019 versi 16.7 | 1927 |
Visual Studio 2019 versi 16.8, 16.9 a | 1928 |
Visual Studio 2019 versi 16.10, 16.11 b | 1929 |
Visual Studio 2022 RTW 17.0 | 1930 |
Visual Studio 2022 versi 17.1 | 1931 |
Visual Studio 2022 versi 17.2 | 1932 |
Visual Studio 2022 versi 17.3 | 1933 |
Visual Studio 2022 versi 17.4 | 1934 |
Visual Studio 2022 versi 17.5 | 1935 |
Visual Studio 2022 versi 17.6 | 1936 |
Visual Studio 2022 versi 17.7 | 1937 |
Visual Studio 2022 versi 17.8 | 1938 |
Visual Studio 2022 versi 17.9 | 1939 |
Visual Studio 2022 versi 17.10 | 1940 |
Visual Studio 2022 versi 17.11 | 1941 |
Visual Studio 2022 versi 17.12 | 1942 |
Visual Studio 2022 versi 17.13 | 1943 |
Visual Studio 2022 versi 17.14 | 1944 |
Visual Studio 2019 16.8 dan 16.9 berbagi versi utama dan minor yang sama (sehingga memiliki nilai yang sama untuk _MSC_VER
). Untuk membedakannya, gunakan _MSC_FULL_VER
. Nilai _MSC_FULL_VER
minimum untuk Visual Studio 2019 16.8 adalah 192829333. Nilai _MSC_FULL_VER
minimum untuk Visual Studio 2019 16,9 adalah 192829910.
b Visual Studio 2019 16.10 dan 16.11 berbagi versi utama dan minor yang sama (sehingga memiliki nilai yang sama untuk _MSC_VER
). Untuk membedakannya, gunakan _MSC_FULL_VER
. Nilai _MSC_FULL_VER
minimum untuk Visual Studio 2019 16.10 adalah 192929917. Nilai _MSC_FULL_VER
minimum untuk Visual Studio 2019 16.11 adalah 192930129.