j ai un doute, peut on redefinir l operateur ">" (superieur) [C++] - Programmation
Marsh Posté le 05-03-2002 à 22:16:53
sté afcile... soluce : surcharge d'operateur ... 
 
exemple : 
 
dans .h 
bool operator < (const date&); 
bool operator > (const date&); 
 
dans .cpp 
bool date :: operator < (const date& d2) 
//surcharge de l'operateur < 
{ 
 int res=testersurdate(d2); 
 if (res==-1) 
 { 
 	cout<<"D1 est avant D2"<<endl; 
 	return true; 
 } 
 else 
 { 
 	cout<<"D1 n'est pas avant D2"<<endl; 
 	return false; 
 } 
} 
 
bool date :: operator > (const date& d2) 
//surcharge de l'operateur > 
{ 
 int res=testersurdate(d2); 
 if (res==1) 
 { 
 	cout<<"D1 est apres D2"<<endl; 
 	return true; 
 } 
 else 
 { 
 	cout<<"D1 n'est pas apres D2"<<endl; 
 	return false; 
 } 
} 
 
 
en fait tu refais ta fonction avec tes propres params... 
Marsh Posté le 05-03-2002 à 22:57:38
d'ailleurs, pour ce genre d'operateur y'a pas de raison de privilegier un coté % à l'autre donc moi je le mettrais plutot en friend de la classe date et le sortirais de la decl de la classe... 
 
ds .h 
class date 
{ 
friend bool operator > (const date &a, const date &b); 
}; 
 
ds .cpp 
 
bool operator > (const date &a, const date &b) 
{ 
if(blablabla) 
  return true; 
else 
  return false; 
} 
Marsh Posté le 05-03-2002 à 21:17:16
et si ou avec quel prototype ??
(si je met 1 argument, le compilo en veut 2, et si j en mets 2, il en veut qu 1 !!)