J'essai de concevoir une structure qui me permettrait de gérer les informations contenues sur des formulaires.
Je peux avoir plusieurs formulaires ex.: F01, f02, etc. et chacun d'eux contiennent des infos (float) qui sont
consignées sur des lignes numérotées (Ligne1, ligne2, etc).
Je peux créer une classe 'formulaire' qui contient une std::Map<int,float> qui peut contenir pour chaque
ligne (int) le montant (float) qui lui est relié. Je peux intégrer à cette classe des fonctions 'get' et
'set' qui me permettraient d'enregistrer et de récuperer les infos.
Je peux par exemple écrire :
formulaire F1;
float valeur;
.
. //calcul de la variable valeur
F1.SetLigne(1, valeur); //set la ligne 1 en lui attribuant 'valeur'
.
.
float x = F1.getLigne(1); //récupere la valeur de la ligne 1 ailleurs dans le code.
Jusque là pas de problème. Mon problème de conception commence ici: à chaque année les formulaires sont modifiés
et des lignes sont ajoutées ou supprimées. Ainsi, si pour le formulaire F1 une ligne est ajoutée avant la
ligne 1, la ligne 1 devient la ligne 2 et ainsi de suite pour les lignes suivantes.
Je dois donc changer la ligne de code :
F1.SetLigne(1, valeur); devient F1.SetLigne(2, valeur);
Avec cette approche, je suis obligé de changer toutes les références (et il y en a beaucoup!) à la ligne 1 du formulaires F1.
float x = F1.getLigne(1); devient float x = F1.getLigne(2);
Je cherche donc à trouver une implémentation qui me permettrait de ne changer que la ligne 'set' et que la fonction 'get'
soit conçue pour aller chercher l'info de la bonne ligne automatiquement...
Toutes les idées sont bienvenues! J'ai beau y réfléchir et je ne vois pas...
NB: je programme en c++ avec visual studio 2005 framework 2.0
Partager