Mots-clés

Les mots-clés sont des symboles caractères qui définissent la syntaxe du langage C#.

Un mot-clé désigne un terme natif à C# doté d’une fonction spécifique. C’est pourquoi vous ne pouvez pas les réutiliser pour nommer des variables, des fonctions ou tout autre identifiant : cela créerait des ambiguïtés syntaxiques. Prenons l’exemple du mot int : il représente le type entier en C#. Si vous tentez de déclarer une variable portant ce nom, comme bool int = 12;, le compilateur ne saura pas interpréter votre code, car int est réservé à un usage propre au langage.

Les mots-clés obéissent à deux règles fondamentales

Les mots-clés ne peuvent pas être utilisés directement comme noms de variables ou autres identifiants ; la seule exception est de faire précéder le mot-clé du symbole @. Tous les mots-clés standard de C# s’écrivent en minuscules ; à l’inverse, les types intégrés à .NET suivent la notation PascalCase (camelCase majuscule initial).

abstractconstexternintoverridesizeoftypeof
ascontinuefalseinterfaceparamsstackallocuint
basedecimalfinallyinternalprivatestaticulong
booldefaultfixedisprotectedstringunchecked
breakdelegatefloatlockpublicstructunsafe
bytedoforlongreadonlyswitchushort
casedoubleforeachnamespacerefthisusing
catchelsegotonewreturnthrowvirtual
charenumifnullsbytetruevoid
checkedeventimplicitobjectsealedtryvolatile
classexplicitinoperatorwhenwhile

Mots réservés globaux, interdits en tant qu’identifiants bruts dans tous les contextes ; le préfixe @ est obligatoire.

int @int; // Syntaxe valide
int int;  // Provoque une erreur de compilationLangage du code : JavaScript (javascript)

Mots-clés contextuels

Mots-clés contextuels (Contextual Keywords)

Les mots-clés contextuels n’ont de signification de mot réservé qu’à l’intérieur de structures syntaxiques précises. Contrairement aux mots-clés classiques, ils peuvent être employés librement comme identifiants dans le reste du code source.

addascendingasyncawaitbydescendingdynamic
equalsfromgetglobalgroupininto
joinletonorderbypartialremoveselect
setvaluevarwhereyield

Ne prennent le statut de mot-clé que dans des syntaxes dédiées ; vous pouvez les nommer directement comme variables ailleurs

int var; // Autorisé, var n’est pas considéré comme mot-clé hors inférence de type
var num = 10; // Ici var agit comme mot-clé pour l’inférence implicite de typeLangage du code : JavaScript (javascript)

Tous les termes surlignés dans l’exemple précédent appartiennent à la catégorie des mots-clés.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *