Bonjour,
La suite de mes petit problemes. Je dois implemente une surcharge pour comparaison de deux membre de classe de deux objets differents.
Sa c'est le construc des objets a comparer et la comparaison se fait sur les objets duree inclus.
Pour cela j'ai dans une de mes classes la methode get_tempsTot() implementee dans ma classe duree. La duree a compare est les min et sec additionee dans la meth concernee et ns, nm sont des membres de la classe dureemorceau(char* ti, duree du);
Ca c'est ma surcharge qui a besoin des deux durees pour faire la comparaison. Implementee dans ma classe morceau.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 //retour de duree en secondes du morceau dans classe duree int duree::get_tempsTot(void){ int tot; tot = (nm * 60) + ns; return tot; }
Ici s'est mon message d'erreur, toujours a la pointe du progres j'imaginais il y a encore peu que le #include "duree.h" inclus plus haut dans le code devait palier a cela.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 //Surcharge de l'operateur == int morceau ::operator ==(const morceau& M){ int tempsThis, tempsM; //Decl int pour comparaison longeur const duree& dur = M.get_duree(); //Chargement de IC objet tempsThis = this.get_tempsTot(); tempsM = M.get_tempsTot(); //Init pour comparaison temps if ( tempsThis == tempsM ){ return 1; }else{ return 0; } }//Fin Surcharge equivalence "=="
L'idee est que la surcharge soit utilisee ensuite pour faire savoir a l'utilisateur quel est le morceau le plus court ou si leur longeur est egaleExécution de make...
make.exe -f "C:\Dev-Cpp\Devoir_3\Makefile.win" all
g++.exe -c morceauImpl.cpp -o morceauImpl.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include"
morceauImpl.cpp: In member function `int morceau::operator==(const morceau&)':
morceauImpl.cpp:81: error: 'const class morceau' has no member named 'get_tempsTot'
make.exe: *** [morceauImpl.o] Error 1
Exécution terminée
Mon probleme est que je ne trouve pas la syntax pour pouvoir appele ma methode dans la classe duree. Non seulement pour l'argument M mais encore plus pour ce qui concerne l'objet appelant du if (A == B).
A serai L'appelant et B l'appele dans ma surcharge
La surcharge est dans mon autre classe morceau.
Si quelqu'un peut m'aiguille
D'avance merci
marc_3
Partager