Ceci est une ancienne révision du document !
Partir d'un code simple :
int x {}; int y {}; int z {}; int a {}; int b {}; int c {};
On décide de changer d'avis et d'utiliser des réels. Nécessite de tout remplacer
double x {}; double y {}; double z {}; double a {}; double b {}; double c {};
Même problème que pour les variables : nécessite modification de plusieurs lignes, code non facilement maintenable, non respect qualité logiciel.
Pour éviter cela, définir un type, le nommer et l'utiliser.
using local_type = int; local_type x {}; local_type y {}; local_type z {}; local_type a {}; local_type b {}; local_type c {};
Pour changer de type, besoin que de changer une ligne. Code plus facilement maintenable
Nom des types = même règle que pour les noms des variables. Souvent, pour montrer que c'est un type, on ajoute _t
a la fin (C++, STL, boost) ou on commence par une majuscule (Qt)
sémantique simple : donner un sens aux types.
ex:
int temp1 { 12 }; // heure int temp2 { 40 }; // minutes temps1 + temps2; // n'a pas de sens
Nommer les types :
using heure = int; using minute = int; heure temp1 { 12 }; minute temp2 { 40 };
Le type exprimer à quoi il correspond, c'est plus précis que “int”. Mais pas suffisant, on peut toujours écrire :
temps1 + temps2; // n'a pas de sens
idéallement, faudrait que compilateur préviennent. Pourquoi fait-il pas ? Parce que “heure” et “minute” ont un sens pour lecteur. Mais pour compilateur, ce sont des int, donc pas d'interdiction d'addition. Sémantique incomplète
Dans la suite, apprendre à créer ses types et créer une sémantique (des “règles” d'utilisation).