Script conversion duree
Résolu/Fermé
godLike
Messages postés
259
Date d'inscription
mercredi 4 mars 2009
Statut
Membre
Dernière intervention
26 juillet 2011
-
31 oct. 2009 à 01:20
pacorabanix - 31 oct. 2009 à 14:51
pacorabanix - 31 oct. 2009 à 14:51
A voir également:
- Script conversion duree
- Script vidéo youtube - Guide
- Microsoft activation script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Monnaie conversion - Télécharger - Banque & Budget
- Durée lien wetransfer - Accueil - Services en ligne
2 réponses
bool inferieurA(TDuree autreD);
bool operator<(TDuree autreD);
TDuree total(TDuree autreD);
1) prends l'habitude de faire des class au lieu des struct, niveau conception objet (ce que fait piteusement struct) ce sera au final plus propre et clair. (Mais ce n'est pas le souci de ton prog)
2) lorsque tu fais de telles fonctions :
bool inferieurA(TDuree autreD);
bool operator<(TDuree autreD);
TDuree total(TDuree autreD);
il faut mieux passer en paramètres des "const TDuree&" au lieu des "TDuree". Sinon le programme fait une copie à chaque fois, ce qui peut être lourd (et sera problématique lorsque tu feras des class pour diverses raisons). Le "&" fait une référence au lieu d'une copie. le "const" c'est pour que ce soit plus propre, car en tu ne souhaites pas modifier les paramètres.
3) dans ce genre de fonction :
tu fais une erreur de logique. Tu veux retourner la valeur de nbSec de ton "objet" ?
Là tu déclares une *nouvelle* variable nbSec locale à la fonction, et qui masque l'autre. De plus tu ne l'initialises pas, ce qui fait qu'au final cette fonction va retourner quelque chose de complètement imprévisible.
4) Pour ton problème : tu veux copier des choses d'une autre variable "autreD" mais dans ton code tu marques "d1." ...
5)utilises les balises < code > comme ça les espaces seront préservés ;) (pour la lecture)
voilà bonne soirée et bonne continuation
bool operator<(TDuree autreD);
TDuree total(TDuree autreD);
1) prends l'habitude de faire des class au lieu des struct, niveau conception objet (ce que fait piteusement struct) ce sera au final plus propre et clair. (Mais ce n'est pas le souci de ton prog)
2) lorsque tu fais de telles fonctions :
bool inferieurA(TDuree autreD);
bool operator<(TDuree autreD);
TDuree total(TDuree autreD);
il faut mieux passer en paramètres des "const TDuree&" au lieu des "TDuree". Sinon le programme fait une copie à chaque fois, ce qui peut être lourd (et sera problématique lorsque tu feras des class pour diverses raisons). Le "&" fait une référence au lieu d'une copie. le "const" c'est pour que ce soit plus propre, car en tu ne souhaites pas modifier les paramètres.
3) dans ce genre de fonction :
int nbSecondes() { int nbSec; return nbSec; }
tu fais une erreur de logique. Tu veux retourner la valeur de nbSec de ton "objet" ?
Là tu déclares une *nouvelle* variable nbSec locale à la fonction, et qui masque l'autre. De plus tu ne l'initialises pas, ce qui fait qu'au final cette fonction va retourner quelque chose de complètement imprévisible.
4) Pour ton problème : tu veux copier des choses d'une autre variable "autreD" mais dans ton code tu marques "d1." ...
5)utilises les balises < code > comme ça les espaces seront préservés ;) (pour la lecture)
voilà bonne soirée et bonne continuation
godLike
Messages postés
259
Date d'inscription
mercredi 4 mars 2009
Statut
Membre
Dernière intervention
26 juillet 2011
26
31 oct. 2009 à 09:52
31 oct. 2009 à 09:52
Ok parce qu'en fait j'avais oublié un truc pour ça que j'avais void TDuree::initialiser(TDuree autreD)
Au lieu d'avoir void TDuree::initialiser(TDuree d1).
C'était ma mon main, j'avais oublié de corriger cette ligne:
autreD.initialiser(autreD);
donc là j'ai écrit
autreD.initialiser(d1);
et .. ça marche =)
merci bcp.
Au lieu d'avoir void TDuree::initialiser(TDuree d1).
C'était ma mon main, j'avais oublié de corriger cette ligne:
autreD.initialiser(autreD);
donc là j'ai écrit
autreD.initialiser(d1);
et .. ça marche =)
merci bcp.