Mots clés (C++)
Les mots clés sont des identificateurs réservés prédéfinis qui ont des significations particulières. Ils ne peuvent pas être utilisés comme identificateurs dans votre programme. Les mots clés suivants sont réservés pour Microsoft C++. Les noms avec traits de soulignement et noms principaux spécifiés pour C++/CX et C++/CLI sont des extensions Microsoft.
Mot clé C++ Standard
alignas
alignof
and
b
and_eq
b
asm
a
auto
bitand
b
bitor
b
bool
break
case
catch
char
char8_t
c
char16_t
char32_t
class
compl
b
concept
c
const
const_cast
consteval
c
constexpr
constinit
c
continue
co_await
c
co_return
c
co_yield
c
decltype
default
delete
do
double
dynamic_cast
else
enum
explicit
export
c
extern
false
float
for
friend
goto
if
inline
un mot clé spécifique à __asm
Microsoft remplace la syntaxe C++asm
. asm
est réservé pour la compatibilité avec d'autres implémentations C++, mais n'est pas implémenté. Utiliser __asm
pour l’assembly inline sur les cibles x86. Microsoft C++ ne prend pas en charge l’assembly inline pour d’autres cibles.
b Les synonymes d’opérateur étendu sont mot clé s quand /permissive-
ou /Za
(Désactiver les extensions de langage) sont spécifiés. Ils ne sont pas mot clé lorsque les extensions Microsoft sont activées.
c Pris en charge quand /std:c++20
ou version ultérieure (par exemple /std:c++latest
) est spécifié.
Mot clé spécifiques à Microsoft
Dans C++, les identificateurs qui contiennent deux traits de soulignement consécutifs sont réservés aux implémentations du compilateur. La convention Microsoft consiste à précéder les mot clé propres à Microsoft avec des traits de soulignement doubles. Ces mots ne peuvent pas être utilisés en tant que noms d'identificateurs.
Les extensions Microsoft sont activées par défaut. Pour vous assurer que vos programmes sont entièrement portables, vous pouvez désactiver les extensions Microsoft en spécifiant l’option /permissive-
ou /Za
(Désactiver les extensions de langage) pendant la compilation. Ces options désactivent certaines mot clé spécifiques à Microsoft.
Lorsque les extensions Microsoft sont activées, vous pouvez utiliser les mots clés Microsoft spécifiques dans vos programmes. Pour la conformité ANSI, ces mot clé sont précédées d’un trait de soulignement double. Pour la compatibilité descendante, les versions de trait de soulignement unique de la plupart des mot clé avec trait de soulignement double sont prises en charge. Le __cdecl
mot clé est disponible sans trait de soulignement principal.
La mot clé remplace la __asm
syntaxe C++asm
. asm
est réservé pour la compatibilité avec d'autres implémentations C++, mais n'est pas implémenté. Utiliser __asm
.
Le __based
mot clé a des utilisations limitées pour les compilations cibles 32 bits et 64 bits.
__alignof
e
__asm
e
__assume
e
__based
e
__cdecl
e
__declspec
e
__event
__except
e
__fastcall
e
__finally
e
__forceinline
e
__hook
d
__if_exists
__if_not_exists
__inline
e
__int16
e
__int32
e
__int64
e
__int8
e
__interface
__leave
e
__m128
d Fonction intrinsèque utilisée dans la gestion des événements.
E Pour la compatibilité descendante avec les versions précédentes, ces mot clé sont disponibles à la fois avec deux traits de soulignement de début et un trait de soulignement unique lorsque les extensions Microsoft sont activées (la valeur par défaut).
Microsoft mot clé s dans les modificateurs de __declspec
Ces identificateurs sont des attributs étendus pour le __declspec
modificateur. Ils sont considérés mot clé dans ce contexte.
C++/CLI et C++/CX mot clé s
__abstract
f
__box
f
__delegate
f
__gc
f
__identifier
__nogc
f
__noop
__pin
f
__property
f
__sealed
f
f Applicable à Extensions managées pour C++ uniquement. Cette syntaxe est maintenant déconseillée. Pour plus d'informations, consultez Component Extensions for Runtime Platforms.
g Applicable à C++/CLI.
Voir aussi
Conventions lexicales
Opérateurs intégrés C++, priorité et associativité
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de l’année 2024, nous abandonnerons progressivement le mécanisme de retour d’information GitHub Issues pour le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultez :Soumettre et afficher des commentaires pour