# Langage C++/Mots clés
## Les Mots Clés

En C++, comme en C d'ailleurs, il existe une série de mots qui ne peuvent et ne doivent être, en aucun cas, utilisés autrement que pour ce à quoi ils sont destinés. Ces mots sont dit "mots clés" et, dans certains cas, appelés "instructions", ou encore opérateurs, ou mots réservés et ont une signification particulière pour le compilateur.
Voici une liste des mots clés/mot réservés du C++ :
| Mots clés | Utilisation |
| +, -, /, *, =, ., <, <=, ==, >=, > &&, ||, &, |, !, ~, != ,(parenthèses), (Crochets)… (Triples Points), , (Virgule) | Opérateurs |
| &, * | Opérateur de référencement/déréferencement (référence/pointeur) |
| # | Préfixe de directives préprocesseur |
| 0x (Zéro-x) | Préfixe de nombre hexadécimal |
| 0 (Chiffre zéro) | Préfixe de nombre octal |
| (Accolades) | Délimitation de portée |
| :: (double deux points) | Opérateur de déréférencement de portée |

### A

| Mot Clé | Utilisation |
| asm | Déclarateur de code assembleur ! |
| auto | Déclarateur de variable à désallocation automatique "Pile"(stack). |

### B

| Mot Clé | Utilisation |
| break | Instruction de branchement dans une boucle ou un traitement de cas. |
| bool | Type de donnée logique dit "booléen". Prend la valeur vrai (true) ou faux (false). |

### C

| Mot Clé | Utilisation |
| case | Déclarateur de cas dans une instruction switch. |
| catch | Récupérateur d'erreur. |
| char | Type de donnée entier dit "caractère". En programmation structurée ce type est déconseillé à l’utilisation mais il permet de rendre certains services. |
| class | Déclarateur de définition de classe. |
| const | Déclarateur de constantes. |
| continue | Instruction de branchement dans une boucle imbriquée. |

### D

| Mot Clé | Utilisation |
| default | Déclarateur de cas par défaut dans une instruction switch. |
| delete | Désallocateur de mémoire dynamique "Tas"(heap). |
| do | Déclarateur de boucle. Ne peut être utilisé qu'en association avec while. |
| double | Type de donnée nombre flottant à double précision. |

### E

| Mot Clé | Utilisation |
| else | Déclarateur de cas par défaut dans une instruction if. |
| enum | Structure de donnée énuméré. |
| extern | Déclarateur d’une variable déclarée dans un autre fichier. |
| explicit | Interdit les constructeurs pour casts implicites. |

### F

| Mot Clé | Utilisation |
| false | Valeur logique (Faux) |
| float | Type de donnée nombre flottant à simple précision. |
| for | Déclarateur de boucle paramétrée. |
| friend | Déclarateur de classe ou de fonction ayant accès aux données privées. |

### G

| Mot Clé | Utilisation |
| goto | Instruction de branchement, en développement structuré son utilisation est interdite car elle rend la compréhension du code plus difficile. |

### I

| Mot Clé | Utilisation |
| if | Déclarateur de traitement conditionnel. |
| inline | Déclarateur de MACRO |
| int | Type de donnée entier. En programmation structurée ce type est déconseillé à l’utilisation mais il permet de rendre certains services. |

### L

| Mot Clé | Utilisation |
| long | Modificateur de longueur de type. |

### M

| Mot Clé | Utilisation |
| main | Méthode point d'entrée du programme. |
| mutable | Rend une partie d’un objet constant modifiable. |

### N

| Mot Clé | Utilisation |
| new | Allocateur de mémoire dynamique "Tas"(heap). |

### O

| Mot Clé | Utilisation |
| operator | Déclarateur de surcharge d'opérateur. |

### P

| Mot Clé | Utilisation |
| private | Déclarateur de membre privé. |
| protected | Déclarateur de membre protégé. |
| public | Déclarateur de membre public. |

### R

| Mot Clé | Utilisation |
| register | Déclarateur de variable registre. |
| return | Instruction de branchement. |

### S

| Mot Clé | Utilisation |
| short | Modificateur de longueur de type. |
| signed | Modificateur d'interprétation de signe de type entier. |
| sizeof | Opérateur spécial permettant de renvoyer la taille d’une variable stockée en pile(stack). |
| static | Déclarateur de variable statique dite "de classe". En programmation structurée, il est déconseillé à l’utilisation mais permet de rendre certains services. |
| struct | Déclarateur de structure. En programmation structurée il est déconseillé à l’utilisation il est préférable d’utiliser des classes à la place. |
| switch | Déclarateur de traitement conditionnel cardinal. |

### T

| Mot Clé | Utilisation |
| template | Declarateur de paramétrage. |
| this | Pointeur spécial désignant l'instance en cours de l'objet. En programmation structurée il est systématiquement et presque obligatoirement utilisé car il améliore la lisibilité. |
| throw | Déclencheur d'exceptions. |
| try | Déclarateur de section à déclenchement d'exceptions. |
| true | Valeur logique (Vrai) |
| typedef | Déclarateur de type. |

### U

| Mot Clé | Utilisation |
| unsigned | Modificateur d'interprétation de signe de type entier. |
| union | Déclarateur d'union. En programmation structurée, il est très fortement déconseillé à l’utilisation il n'est utilisé que dans des cas très rares et pour des applications très spécifiques. |

### V

| Mot Clé | Utilisation |
| virtual | Déclarateur de méthode virtuelle. |
| void | Indicateur d’une absence de type (là où un type serait attendu). |
| volatile | Déclarateur de membre critique nécessitant un traitement d'actualisation particulier notamment lors de l’utilisation de threads. |

### W

| Mot Clé | Utilisation |
| while | Déclarateur de boucle conditionnelle. |

### Instructions du langage C

| Mot Clé | Utilisation |
| include, define, ifdef, ifndef, pragma, error | Directives préprocesseur |
| malloc, realloc, calloc, free | Opérateurs C d'allocation/désallocation de mémoire dynamique. |
| Introduction | Types |