Schlüsselwörter (C++)

Schlüsselwörter sind vordefinierte, reservierte Bezeichner, die besondere Bedeutungen haben. Sie können nicht als Bezeichner in Ihrem Programm verwendet werden. Die folgenden Schlüsselwörter sind für Microsoft C++ reserviert. Namen mit führenden Unterstrichen und Namen, die für C++/CX und C++/CLI angegeben sind, sind Microsoft-Erweiterungen.

C++-Standardstichwörter

constinitc
continue
co_awaitc
co_returnc
co_yieldc
decltype
default
delete
do
double
dynamic_cast
else
enum
explicit
exportc
extern
false
float
for
friend
goto
if
inline

ein Microsoft-spezifisches __asm Schlüsselwort ersetzt die C++ asm -Syntax. asm ist für die Kompatibilität mit anderen C++-Implementierungen reserviert, jedoch nicht implementiert. Verwenden Sie __asm die Inlineassembly für x86-Ziele. Microsoft C++ unterstützt keine Inlineassembly für andere Ziele.

b Die Synonyme für erweiterte Operatoren sind Schlüsselwörter, wenn /permissive- oder /Za (Spracherweiterungen deaktivieren) angegeben werden. Sie sind keine Schlüsselwörter, wenn Microsoft-Erweiterungen aktiviert sind.

c Unterstützt, wenn /std:c++20 oder höher (z /std:c++latest. B. ) angegeben wird.

Microsoft-spezifische C++-Schlüsselwörter

In C++ sind Bezeichner, die zwei aufeinander folgende Unterstriche enthalten, für Compilerimplementierungen reserviert. Die Microsoft-Konvention besteht darin, Microsoft-spezifische Schlüsselwörter mit doppelten Unterstrichen vorangestellt zu werden. Diese Wörter können nicht als Bezeichnernamen verwendet werden.

Standardmäßig sind Microsoft-Erweiterungen aktiviert. Um sicherzustellen, dass Ihre Programme vollständig portierbar sind, können Sie Microsoft-Erweiterungen deaktivieren, indem Sie die Option oder/Za (Spracherweiterungen deaktivieren) während der /permissive- Kompilierung angeben. Diese Optionen deaktivieren einige microsoftspezifische Schlüsselwörter.

Wenn Microsoft-Erweiterungen aktiviert sind, können Sie Microsoft-spezifische Schlüsselwörter in Programmen verwenden. Bei DER ANSI-Konformität werden diese Schlüsselwörter durch einen doppelten Unterstrich vorgeformt. Bei Abwärtskompatibilität werden single-unterstriche Versionen vieler doppelt unterstrichener Schlüsselwörter unterstützt. Das __cdecl Schlüsselwort ist ohne führendes Unterstrich verfügbar.

Das __asm Schlüsselwort ersetzt die C++ asm -Syntax. asm ist für die Kompatibilität mit anderen C++-Implementierungen reserviert, jedoch nicht implementiert. Verwenden Sie __asm.

Das __based Schlüsselwort hat eingeschränkte Verwendungsmöglichkeiten für 32-Bit- und 64-Bit-Zielkompilierungen.

d Systeminterne Funktion, die in der Ereignisbehandlung verwendet wird.

e Für die Abwärtskompatibilität mit früheren Versionen sind diese Schlüsselwörter sowohl mit zwei führenden Unterstrichen als auch mit einem einzigen führenden Unterstrich verfügbar, wenn Microsoft-Erweiterungen aktiviert sind (standard).

Microsoft-Schlüsselwörter in __declspec Modifizierern

Diese Bezeichner sind erweiterte Attribute für den __declspec Modifizierer. Sie werden in diesem Kontext als Schlüsselwörter betrachtet.

C++/CLI- und C++/CX-Schlüsselwörter

__abstractF
__boxF
__delegateF
__gcF
__identifier
__nogcF
__noop
__pinF
__propertyF
__sealedF

f Gilt nur für Managed Extensions for C++. Diese Syntax ist inzwischen veraltet. Weitere Informationen finden Sie unter Komponentenerweiterungen für Laufzeitplattformen.

g Anwendbar auf C++/CLI.

Weitere Informationen

Lexikalische Konventionen
Integrierte C++-Operatoren, Rangfolge und Zuordnung