Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Mit /Zc:__cplusplus der Compileroption kann das __cplusplus Präprozessormakro einen aktualisierten Wert für die Unterstützung neuer C++-Sprachstandards melden. Standardmäßig gibt Visual Studio immer den Wert 199711L für das __cplusplus Präprozessormakro zurück.
Syntax
/Zc:__cplusplus[-]
Hinweise
Das __cplusplus Präprozessormakro wird häufig verwendet, um unterstützung für eine bestimmte Version des C++-Standards zu melden. Da viele vorhandenen Code scheinbar vom Wert dieses Makroabgleichs 199711Labhängen, ändert der Compiler nicht den Wert des Makros, es sei denn, Sie melden sich explizit mit der /Zc:__cplusplus Compileroption an. Die /Zc:__cplusplus Option ist ab Visual Studio 2017, Version 15.7, verfügbar und ist standardmäßig deaktiviert. In früheren Versionen von Visual Studio und standardmäßig oder falls /Zc:__cplusplus- angegeben, gibt Visual Studio den Wert 199711L für das __cplusplus Präprozessormakro zurück. Die Option /permissive- aktiviert /Zc:__cplusplus nicht.
Wenn die /Zc:__cplusplus Option aktiviert ist, hängt der vom __cplusplus Makro gemeldete Wert von der /std Versionsoptionseinstellung ab. Diese Tabelle zeigt die möglichen Werte für das Makro:
/Zc:__cplusplus Option |
/std Option |
Wert vom Typ __cplusplus |
|---|---|---|
Zc:__cplusplus |
/std:c++14 (Standard) |
201402L |
Zc:__cplusplus |
/std:c++17 |
201703L |
Zc:__cplusplus |
/std:c++20 |
202002L |
Zc:__cplusplus |
/std:c++latest |
siehe Text |
Zc:__cplusplus- (deaktiviert) |
Beliebiger Wert | 199711L |
| Nicht angegeben | Beliebiger Wert | 199711L |
Der Compiler unterstützt keine Standardoptionen für C++98, C++03 oder C++11. Die /std:c++20 Option ist ab Visual Studio 2019, Version 16.11, verfügbar. Der Wert der __cplusplus /std:c++latest Option hängt von der Version von Visual Studio ab. Es ist immer mindestens ein höherer als der höchste unterstützte __cplusplus Standardwert, der von Ihrer Version von Visual Studio unterstützt wird.
Verwenden Sie zum präziseren Erkennen von Änderungen am Compilertoolset das _MSC_VER vordefinierte Makro. Der Wert dieses integrierten Makros wird für jedes Toolsetupdate in Visual Studio 2017 und höheren Versionen heraufgesetzt. Das _MSVC_LANG vordefinierte Makro meldet die Standardversion, ob die /Zc:__cplusplus Option aktiviert oder deaktiviert ist. Wenn /Zc:__cplusplus diese Option aktiviert ist, __cplusplus hat sie denselben Wert wie _MSVC_LANG.
So legen Sie diese Compileroption in Visual Studio fest
Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).
Klicken Sie auf der Eigenschaftenseite auf Konfigurationseigenschaften>C/C++>Befehlszeile.
Fügen Sie den Bereich "Zusätzliche
/Zc:__cplusplusOptionen" hinzu oder/Zc:__cplusplus-fügen Sie sie hinzu.
Siehe auch
/Zc (Konformität)
/std (Standardversion für die Sprache festlegen)
Vordefinierte Makros