Section courante

A propos

Section administrative du site

Le langage de programmation C# contient des mots réservés ayant une signification particulière pour le compilateur. Ces mots réservés sont appelés «mots clefs» ou «mots réservés». Les mots clefs ne peuvent pas être utilisés comme identifiacateur (nom d'une variable, classe, interface,...). Les mots clefs en C# sont répartis dans les catégories suivantes :

Mots clefs modificateurs

Les mots clefs modificateurs sont des mots clefs spécifiques indiquant qui peut modifier les types et les membres de type. Les modificateurs permettent ou empêchent certaines parties des programmes d'être modifiées par d'autres parties.

Nom Description
ABSTRACT Ce mot réservé permet d'identifier des classes et des méthodes de types abstraites.
ASYNC Ce mot réservé permet d'indiquer qu'une méthode, une expression lambda ou une méthode anonyme est désynchronisé.
CONST Ce mot réservé permet de définir une constante.
EVENT Ce mot réservé permet de définir un événement.
EXTERN Ce mot réservé permet de déclarer une méthode externe comme par exemple lorsqu'on définit une API de Windows.
NEW Ce mot réservé permet de créer un objet.
OVERRIDE Ce mot réservé permet d'indiquer de modifier ou d'étendre une classe existante. On peut voir cette instruction comme une façon de construire une même classe en plusieurs parties distinct dans le code source.
PARTIAL Ce mot réservé permet de diviser l'implémentation d'une classe, d'une structure, d'une méthode ou d'une interface dans plusieurs fichiers .cs.
READONLY Ce mot réservé permet d'indiquer que le champs peut seulement être modifié dans la partie déclarative ou le constructeur d'une même classe.
SEALED Ce mot réservé permet d'indiquer qu'il est impossible d'hériter de la classe spécifié.
STATIC Ce mot réservé permet de rendre disponible une fonction ou variable d'une classe de façon global comme si elle se trouvait en dehors de la classe elle-même.
UNSAFE Ce mot réservé permet d'indiquer un contexte non-sûre, lequel est requis pour des opérations sur les pointeurs.
VIRTUAL Ce mot réservé permet de définir une fonction pouvant être remplacer par une nouvelle fixation de classe.
VOLATILE Ce mot réservé permet d'indiquer qu'un champ peut être modifié par plusieurs plusieurs processus léger s'exécutant en même temps. Le compilateur, le système d'exécution et même le matériel peuvent réorganiser les lectures et les écritures dans les emplacements mémoire pour des raisons de performances. Les champs déclarés volatiles sont exclus de certains types d'optimisations. Il n'y a aucune garantie d'un seul ordre total des écritures volatiles comme vu de tous les processus léger d'exécution.

Mots clefs du modificateur d'accès

Les modificateurs d'accès sont appliqués à la déclaration de la classe, de la méthode, des propriétés, des champs et des autres membres. Ils définissent l'accessibilité de la classe et de ses membres :

Nom Description
INTERNAL Ce mot réservé permet d'accéder au modificateur de type d'un membre.
PRIVATE Ce mot réservé permet de spécifier qu'un objet ou une variable est de type privé et seulement accessible par les méthodes de la classe.
PROTECTED Ce mot réservé permet de rendre accessible des éléments d'une classe uniquement par la classe et à ses filles.
PUBLIC Ce mot réservé permet de spécifier qu'un objet ou une variable est de type public ou accessible à tous.

Mots clefs de l'énoncé

Les mots clefs d'instruction sont liés au flux de programme :

Nom Description
BREAK Ce mot réservé permet d'interrompre une boucle ou une instruction «switch».
CASE Ce mot réservé permet d'identifier un cas dans un mot réservé «switch».
CATCH Ce mot réservé permet la gestion des erreurs.
CHECKED Ce mot réservé permet d'activer la vérification du débordement de valeur supporté par le type de données lorsqu'on effectue des traitements mathématique ou de conversion.
CONTINUE Ce mot réservé permet de recommencer au début d'une boucle.
DEFAULT Ce mot réservé permet d'exécuter un cas par défaut si les autres ne sont pas correspondant dans une mot réservé «switch» ou de demander la valeur par défaut d'un type de données.
DO Ce mot réservé permet d'effectuer une boucle avec un mot réservé «while».
ELSE Ce mot réservé permet d'effectuer une situation contraire à la condition «if».
FINALLY Ce mot réservé indique une partie exécuté de façon générale dans un traitement d'exception et d'erreur.
FIXED Ce mot réservé permet d'empêcher que la variable soit déplacable en mémoire et ainsi ne se ramasse pas dans le ramasse-miette (Garbage Collector).
FOR Ce mot réservé permet d'effectuer une compteur de boucle.
FOREACH Ce mot réservé permet d'effectuer une compteur de boucle pour chacun des éléments d'un tableau.
GOTO Ce mot réservé permet de faire un saut d'exécution à une étiquette.
IF Ce mot réservé permet d'effectuer le traitement d'une condition.
IN Ce mot réservé permet d'effectuer un teste sur des ensembles.
LOCK Ce mot réservé permet d'indiquer l'exécution d'un bloc d'instruction dans un contexte de section critique.
RETURN Ce mot réservé permet de terminer une fonction avec une valeur optionnel.
SWITCH Ce mot réservé permet d'effectuer des testes de cas.
THROW Ce mot réservé permet de déclencher une exception.
TRY Ce mot réservé débute un bloc devant être surveillé par des exceptions.
UNCHECKED Ce mot réservé permet de désactiver la vérification du débordement de valeur supporté par le type de données lorsqu'on effectue des traitements mathématique ou de conversion sur l'objet courant.
WHILE Ce mot réservé permet de définir une boucle.
YIELD Ce mot réservé permet d'indiquer que la méthode, l'opérateur ou l'accesseur get dans lequel il apparaît est un itérateur.

Mots-clefs des paramètres de méthode

Ces mots clefs sont appliqués aux paramètres d'une méthode :

Nom Description
PARAMS Ce mot réservé permet d'indiquer une méthode avec un nombre d'arguments variables. On parle donc d'une méthode pouvant aussi bien avoir 1, 2, 3, 5, 10 ou 27 paramètres ou toutes autres nombres de paramètres souhaité par l'utilisateur de cette méthode.
OUT Ce mot réservé permet d'indiquer un passage de paramètre par référence.
REF Ce mot réservé permet d'indiquer un passage de paramètre par référence. Cependant les paramètres, utilisant se mot, sont traités avant ceux du «out».

Mots clefs de l'espace de noms

Ces mots clefs sont appliqués avec l'espace de noms et les opérateurs associés :

Nom Description
. (opérateur)  
:: (opérateur) Ce mot réservé permet d'accéder à un membre d'un espace de noms d'alias.
EXTERN ALIAS Ce mot réservé permet de référencer deux versions d'assemblys ayant les mêmes noms de types complets.
USING Ce mot réservé permet de définir des alias dans des espaces de noms ou l'utilisation d'un objet dans un bloc.

Mots clefs de l'opérateur

Les mots clefs d'opérateur effectuent diverses actions :

Nom Description
AS Ce mot réservé permet d'associer un type de données différents (cast) lors de l'utilisation d'une variable.
AWAIT Ce mot réservé permet de suspendre l'évaluation de la méthode désynchronisé englobante jusqu'à ce que l'opération désynchronisé représentée par son opérande se termine.
CHECKED Ce mot réservé permet d'activer la vérification du débordement de valeur supporté par le type de données lorsqu'on effectue des traitements mathématique ou de conversion.
IS Ce mot réservé permet de vérifier si le type de données est compatible avec celui spécifié.
NEW Ce mot réservé permet de créer un objet.
SIZEOF Ce mot réservé permet d'indiquer la taille d'une variable ou d'un type de données.
TYPEOF Ce mot réservé permet de déterminer un type de variable.
STACKALLOC Ce mot réservé permet d'allouer un bloc de mémoire sur la pile. Un bloc de mémoire alloué à la pile créé pendant l'exécution de la méthode est automatiquement supprimé lorsque cette méthode revient.
UNCHECKED Ce mot réservé permet de désactiver la vérification du débordement de valeur supporté par le type de données lorsqu'on effectue des traitements mathématique ou de conversion sur l'objet courant.

Mots clefs d'accès

Les mots clefs d'accès sont utilisés pour accéder à la classe conteneur ou à la classe de base d'un objet ou d'une classe :

Nom Description
BASE Ce mot réservé permet d'accéder aux membres de la base d'une classe (classe parent) lorsqu'on est dans une classe enfant.
THIS Ce mot réservé permet de se référer directement à un élément, variable ou fonction de la classe courante.

Mots clefs littéraux

Les mots clefs littéraux s'appliquent à l'instance ou à la valeur actuelle d'un objet :

Nom Description
FALSE Ce mot réservé est une constante indiquant «faux» (false).
NULL Ce mot réservé est une constante indiquant «nulle».
TRUE Ce mot réservé est une constante indiquant «vrai» (true).
VALUE Ce mot réservé permet d'indiquer l'accesseur set dans les déclarations de propriété et d'indexeur.
VOID Ce mot réservé permet de définir un type n'ayant aucun type.

Mots clefs de type de données

Les mots clefs de type sont utilisés pour les types de données :

Nom Description
BOOL Ce mot réservé identifie le type de données «Booléen».
BYTE Ce mot réservé identifie le type de données «octet».
CHAR Ce mot réservé identifie le type de données de caractère.
CLASS Ce mot réservé identifie un objet (classe).
DECIMAL Ce mot réservé identifie le type de données de décimal.
DOUBLE Ce mot réservé identifie le type de données réel de double précision.
ENUM Ce mot réservé permet d'identifier un type de données d'énumération.
FLOAT Ce mot réservé permet d'identifier le type de données de «float».
INT Ce mot réservé identifie le type de données d'entier.
LONG Ce mot réservé identifie le type de données d'entier long.
SBYTE Ce mot réservé identifie le type de données d'entier court.
SHORT Ce mot réservé identifie le type de données d'entier court.
STRING Ce mot réservé identifie le type de données de chaîne de caractères.
STRUCT Ce mot réservé permet d'identifier une structure de données (un enregistrement).
UINT Ce mot réservé identifie le type de données de nombre naturel.
ULONG Ce mot réservé identifie le type de données de nombre naturel long.
USHORT Ce mot réservé identifie le type de données de nombre naturel court.

Mots clefs contextuels

Les mots clefs contextuels sont considérés comme des mots clefs, uniquement s'ils sont utilisés dans des contextes spécifiques. Ils ne sont pas réservés et peuvent donc être utilisés comme noms ou identificateurs.

Nom Description
ADD Ce mot réservé permet de définir un accesseur d'événement personnalisé étant appelé lorsque le code client s'abonne à votre événement. Si vous fournissez un accesseur d'ajout personnalisé, vous devez également fournir un accesseur de suppression.
DYNAMIC Ce mot réservé permet d'indiquer un objet de type dynamique contourne la vérification de type statique.
GLOBAL Ce mot réservé permet d'indiquer une portée d'espace de nom globale.
SET Ce mot réservé permet de définir une méthode d'accès dans une propriété ou un indexeur attribuant une valeur à la propriété ou à l'élément indexeur.
VALUE Ce mot réservé permet d'indiquer l'accesseur set dans les déclarations de propriété et d'indexeur.
VAR Ce mot réservé permet d'indiquer une variable locale implicitement typée est fortement typée comme si vous aviez déclaré le type vous-même, mais le compilateur détermine le type de données.

Les mots clefs contextuels ne sont pas convertis en couleur bleue (couleur par défaut pour les mots clefs dans Visual Studio) lorsqu'ils sont utilisés comme identificateur dans Visual Studio.

Mots clefs de requête

Les mots clefs de requête sont des mots clefs contextuels utilisés dans les requêtes LINQ :

Nom Description
ASCENDING Ce mot réservé permet d'indiquer un ascendant utilisé dans la clause orderby des expressions de requête pour spécifier que l'ordre de tri va du plus petit au plus grand. Étant donné que l'ordre de tri par défaut est ascendant, vous n'avez pas à le spécifier.
BY Ce mot réservé permet d'indiquer, dans la clause group, une expression de requête pour spécifier comment les éléments renvoyés doivent être regroupés.
DESCENDING Ce mot réservé permet d'indiquer un descendant utilisé dans la clause orderby des expressions de requête pour spécifier que l'ordre de tri va du plus grand au plus petit.
EQUALS Ce mot réservé permet d'indiquer une clause de jointure dans une expression de requête pour comparer les éléments de deux séquences.
FROM Ce mot réservé permet d'introduire une expression de requête. De plus, une expression de requête peut contenir des sous-requêtes, commençant également par une clause from.
GROUP Ce mot réservé permet de retourner une séquence d'objets IGrouping<TKey,TElement> contenant zéro ou plusieurs éléments correspondant à la valeur de clef du groupe.
INTO Ce mot réservé permet de créer un identificateur temporaire pour entreposer les résultats d'une clause group, join ou select dans un nouvel identificateur. Cet identifiant peut lui-même être un générateur de commandes de requêtes supplémentaires. Lorsqu'il est utilisé dans une clause group ou select, l'utilisation du nouvel identificateur est parfois appelée continuation.
JOIN Ce mot réservé permet d'associer des éléments de différentes séquences source n'ayant pas de relation directe dans le modèle objet. La seule exigence est que les éléments de chaque source partagent une valeur pouvant être comparée pour l'égalité.
IN Ce mot réservé permet d'effectuer un teste sur des ensembles.
LET Ce mot réservé permet de créer une nouvelle variable d'intervalle et l'initialise avec le résultat de l'expression que vous fournissez.
ON Ce mot réservé permet d'indiquer la condition de jointure dans une expression de requête.
ORDERBY Ce mot réservé permet d'entraîner le tri de la séquence ou de la sous-séquence (groupe) renvoyée dans l'ordre croissant ou décroissant dans une expression de requête.
WHERE Ce mot réservé permet d'indiquer quels éléments de la source de données seront renvoyés dans l'expression de requête.
SELECT Ce mot réservé permet d'indiquer le type de valeurs étant produites lors de l'exécution de la requête.

Autres mots clefs

Nom Description
DELEGATE Ce mot réservé permet d'effectuer une déclaration de type de référence pour encapsuler un nom ou une méthode anonyme.
EXPLICIT Ce mot réservé permet de définir un type de données pour un opérateur utilisateur lorsqu'on effectue les conversions de type (cast).
IMPLICIT Ce mot réservé permet de définir un type de données pour un opérateur utilisateur.
INTERFACE Ce mot réservé permet de définir une zone de définition des méthodes modèle pour une classe (interface).
NAMESPACE Ce mot réservé permet de définir un espace de noms.
OBJECT Ce mot réservé est un identificateur de type de données étant l'ancêtre tous les types définit en C#. En somme, on peut dire qu'il s'agit du père à tous.
OPERATOR Ce mot réservé permet de définir un opérateur dans une classe ou une déclaration de structure.


Dernière mise à jour : Mercredi, le 29 décembre 2021