Un mot-clé est un nom ayant une signification spéciale, et qui ne peut pas être utilisé comme identificateur de classe, de méthode ou de variable.
Voici la liste complète des mots clés reconnus par le langage C#.
abstract.
Ce mot-clé permet de déclarer une classe ou une méthode abstraite (voir classe abstraite).
add.
Accesseur d'ajout d'une méthode à un codice_1 (voir fonctionnement interne d'un event).
alias.
Alias d'assemblage pour créer de nouvelles racines d'espace de nom (voir Alias d'assemblages).
as.
Opérateur de conversion (voir l'opérateur as).
ascending.
Utiliser l'ordre croissant pour le critère de tri des résultats d'une expression de requête.
Voir Tri dans une expression de requête.
async.
Déclarer une fonction asynchrone.
Voir Fonctions asynchrones et tâches, await.
await.
Attendre la fin et récupérer le résultat d'une fonction asynchrone.
Voir Fonctions asynchrones et tâches, async.
base.
Référence à la classe de base (voir héritage de classes).
bool.
Le type booléen (voir Les types de bases).
break.
Interruption de l'exécution d'une boucle ou d'un test de cas (voir les structures de contrôle).
by.
Critère de regroupement des résultats d'une expression de requête.
Voir Regroupement dans une expression de requête.
byte.
Le type octet (8 bits) non signé (voir Les types de bases).
case.
Déclaration d'un cas à tester (voir tests de plusieurs cas, default, switch).
catch.
Début du bloc exécuté quand une exception est attrapée (voir attraper une exception).
char.
Le type caractère unicode (16 bits) (voir Les types de bases).
checked.
Évaluation de l'expression donnée dans un contexte vérifiant le débordement, et lançant une exception de type codice_2 dans ce cas (voir Vérification du débordement et unchecked).
class.
Déclaration d'une nouvelle classe d'objets (voir les classes).
const.
Déclaration d'une constante (voir Les constantes).
continue.
Poursuite immédiate de l'exécution d'une boucle sans exécuter la fin du bloc d'instruction (voir continuer une boucle).
decimal.
Le type nombre décimal à virgule flottante, grande précision (voir Les types de bases).
delegate.
Déclaration d'une référence à une méthode de signature spécifique (voir Les délégués).
descending.
Utiliser l'ordre décroissant pour le critère de tri des résultats d'une expression de requête.
Voir Tri dans une expression de requête.
do.
Cette instruction permet d'exécuter plusieurs fois une instruction (voir les boucles, while).
double.
Le type nombre à virgule flottante, double précision (voir Les types de bases).
else.
Cette instruction précède l'instruction à exécuter quand la condition est fausse (voir condition).
enum.
Déclaration d'une nouvelle énumération (voir les énumérations).
event.
Déclaration d'une référence de méthode pour la gestion d'évènements (voir Les évènements).
explicit.
Déclarer un opérateur de conversion explicite (voir Explicite/Implicite, implicit).
extern.
Déclarer une fonction définie dans une DLL (voir Appel de plateforme).
false.
Faux. L'une des deux valeurs possibles pour le type booléen (voir Les types de bases, true).
finally.
Début du bloc de code exécuté à la fin d'un bloc codice_3, quelles que soient les exceptions éventuellement lancées (voir attraper une exception).
fixed.
Éviter le déplacement en mémoire d'un tableau ou d'un objet par le ramasse-miettes (voir Éviter le déplacement par le ramasse-miettes).
float.
Le type nombre à virgule flottante, simple précision (voir Les types de bases).
for.
Cette instruction permet d'exécuter plusieurs fois une instruction (voir les boucles).
foreach.
Cette instruction permet d'exécuter une instruction pour chacun des éléments d'un ensemble : tableau, liste, ... (voir les boucles, in).
from.
Définition d'une expression de requête (voir Expression de requête).
get.
Accesseur de lecture d'une propriété ou d'un indexeur (voir propriétés et indexeurs).
global.
Racine par défaut des espaces de nom (voir Conflit de nom).
goto.
Cette instruction poursuit l'exécution au cas indiqué (voir tests de plusieurs cas, switch).
group.
Objet de regroupement des résultats d'une expression de requête.
Voir Regroupement dans une expression de requête.
if.
Cette instruction permet d'exécuter une instruction si une condition est vraie (voir condition).
implicit.
Déclarer un opérateur de conversion implicite (voir Explicite/Implicite, explicit).
in.
Cette instruction permet de spécifier l'ensemble d'éléments (tableau, liste, ...) pour lequel une instruction sera exécutée pour chacun des éléments (voir les boucles, foreach).
init.
Accesseur d'initialisation d'une propriété (voir Accesseurs d'initialisation des propriétés).
int.
Le type entier signé sur 32 bits (voir Les types de bases).
interface.
Déclaration d'une nouvelle interface (voir les interfaces).
internal.
Niveau de protection d'un membre de classe : accès possible au sein du même assemblage seulement (voir Niveaux de protection).
into.
Définir le nom référençant le regroupement des résultats dans une expression de requête.
Voir Regroupement dans une expression de requête.
is.
Test du type d'un objet (voir L'opérateur is).
join.
Jointure entre deux sources de données dans une expression de requête (voir Expression de requête).
lock.
Outil de synchronisation entre threads permettant un accès exclusif à un objet pendant l'exécution du bloc de code associé (voir Synchonisation avec le mot clé codice_4).
long.
Le type entier signé sur 64 bits (voir Les types de bases).
nameof.
Récupérer le nom de la variable spécifiée entre parenthèses (voir Types de base : Obtenir le nom).
namespace.
Déclaration d'un espace de nom (voir les espaces de noms).
null.
Référence nulle (voir La référence nulle).
object.
Type d'objet à la base de tous les autres types (voir Les objets).
operator.
Mot clé précédant l'opérateur surchargé dans une déclaration de méthode (voir Surcharge des opérateurs).
orderby.
Clause des critères de tri des résultats d'une expression de requête.
Voir Tri dans une expression de requête.
out.
Mode de passage de paramètre à une méthode de type écriture seule. Un tel paramètre doit obligatoirement être modifié par la méthode appelée, et n'a pas besoin d'être initialisé avant l'appel à la méthode (voir Paramètre out, ref).
override.
Redéfinition d'une méthode avec polymorphisme (voir Redéfinition avec polymorphisme, virtual).
params.
Précède la déclaration du dernier paramètre d'une méthode (de type tableau) pour que celui-ci recueille tous les paramètres supplémentaires sous la forme d'un tableau (voir Nombre variable de paramètres).
partial.
Ce mot clé indique que le fichier source ne contient qu'une partie de la classe, la structure ou l'interface déclarée.
Il peut également servir à déclarer une méthode partielle dans un type partiel.
Voir type partiel.
private.
Niveau de protection d'un membre de classe le plus restrictif : accès possible au sein de la classe seulement (voir Niveaux de protection).
protected.
Niveau de protection d'un membre de classe : accès possible au sein de la classe ou de ses sous-classes, quel que soit le niveau d'héritage (voir Niveaux de protection et Héritage).
public.
Niveau de protection d'un membre de classe le moins restrictif : accès possible depuis n'importe quelle classe (voir Niveaux de protection).
readonly.
Déclaration d'une variable en lecture seule, c'est-à-dire dont l'affectation ne peut s'effectuer qu'une seule fois (voir Variable en lecture seule).
ref.
Mode de passage de paramètre à une méthode de type lecture et écriture (référence). Un tel paramètre peut être modifié par la méthode appelée, et doit être initialisé avant l'appel à la méthode (voir Paramètre out, out).
remove.
Accesseur de retrait de méthode d'un event (voir fonctionnement interne d'un event).
return.
Cette instruction spécifie ce que la fonction retourne (voir les fonctions).
sbyte.
Le type octet (8 bits) signé (voir Les types de bases).
sealed.
Une classe déclarée "Sealed" ne peut plus être héritée (voir Classe sans héritière).
select.
Définition des données retournées par une expression de requête (voir Sélection des résultats d'une expression de requête).
set.
Accesseur de modification d'une propriété ou d'un indexeur (voir propriétés et indexeurs).
short.
Le type entier signé sur 16 bits (voir Les types de bases).
sizeof.
Obtenir la taille du type ou de la variable spécifiée entre parenthèses. Le code utilisant cet opérateur doit être déclaré comme non vérifié (voir Taille d'une variable ou d'un type, unsafe).
stackalloc.
Allocation sur la pile au lieu du tas. Ce mot-clé doit être utilisé dans un contexte de code non vérifié (voir Allocation sur la pile, unsafe).
static.
Déclaration d'un membre statique d'une classe, ou d'une classe statique ne contenant que des membres statiques (voir Membres statiques de classe et membres d'instance).
string.
Le type chaîne de caractères (voir Les types de bases).
struct.
Déclaration d'une nouvelle structure de données (voir les structures).
switch.
Cette instruction permet de tester la valeur d'une expression avec plusieurs cas (voir tests de plusieurs cas, case, default).
this.
Référence à l'objet lui-même (voir héritage de classes).
throw.
Cette instruction lance un exception (voir lancer une exception).
true.
Vrai. L'une des deux valeurs possibles pour le type booléen (voir Les types de bases, false).
try.
Début du bloc de code pour lequel les exceptions sont attrapées (voir attraper une exception).
typeof.
Récupérer le type (codice_5) de la classe dont le nom est spécifié entre parenthèses (voir Types de base : Obtenir le type).
uint.
Le type entier non signé sur 32 bits (voir Les types de bases).
ulong.
Le type entier non signé sur 64 bits (voir Les types de bases).
unchecked.
Évaluation de l'expression donnée dans un contexte ne vérifiant pas le débordement, et copiant le résultat même si celui-ci ne loge pas dans le type requis (voir Non vérification du débordement, checked).
unsafe.
Déclarer du code non vérifié (voir Code non vérifié).
ushort.
Le type entier non signé sur 16 bits (voir Les types de bases).
value.
Nom réservé au paramètre des accesseurs add, remove et set.
var.
Typage implicite d'une variable locale en fonction de la valeur qui lui est affectée (Voir Type variable).
virtual.
Déclaration d'une méthode dont la redéfinition est avec polymorphisme (voir Redéfinition avec polymorphisme, override).
void.
Le type vide pour indiquer qu'une fonction ne retourne rien (voir Les fonctions).
volatile.
Déclaration d'un attribut de classe modifiable par plusieurs threads en même temps.
Pour des raisons de performance, le système d'exécution peut décider de changer l'ordre des lectures et écritures en mémoire.
Les champs déclarés comme volatiles ne sont pas soumis à ce changement, ce qui permet d'assurer que l'écriture par un thread et la lecture par un autre se fasse dans le bon ordre.
Voir Attribut volatile.
when.
Ajoute une condition pour un cas de test codice_7 ou pour attraper une exception.
Voir le test de cas conditionnel et Attraper conditionnellement une exception.
where.
Contraintes sur un type générique (voir Contraintes sur les types génériques) ou filtre dans une expression de requête (voir Filtre d'une expression de requête).
while.
Cette instruction permet d'exécuter plusieurs fois une instruction tant qu'une condition est vraie (voir les boucles, do).
yield.
Cette instruction permet de créer une énumération (voir l'interface IEnumerable et le mot clé yield).