surcharge de l'operateur+
	
	
		merci medinoc mais j'avoue que ne comprend pas toujours j'ai besoin d'un peu d'explication car beaucoup de choses sont floues dans ma tete.
l
	 
	
	
	
		surcharge de l'operateur+
	
	
		bonsoir et merci  pour les details de la  reponse.Cependant j'ai toujours  faim.
les cours je les ai lu et relu.
je vais reformuler ma question . 
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 
 |  
Duree Duree::operator+(const Duree &duree)
{
    int heures = m_heures;
    int minutes = m_minutes;
    int secondes = m_secondes;
 
 
       secondes += duree.m_secondes; 
       minutes += secondes / 60;
       secondes %= 60;
 
 
    minutes += duree.m_minutes;
 
    heures += minutes / 60;
    minutes %= 60;
 
 
    heures += duree.m_heures;
 
//enfin cette ligne je ne la comprend pas du tout 
 
    // Création de l'objet resultat et retour
    Duree resultat(heures, minutes, secondes);
    return resultat;
} | 
 1:on considere par exemple  
Duree duree1(01,24,32) , duree2(3,45,23).
pour ce qui est de duree1() est ce parce qu'il est en premiere position que je suis dedans ? selon ce que tu as dis
	Citation:
	
		
		
			 Celui que tu appel "duree1" s'appel ici "this" car tu est "dedans" (il y a surement un terme technique pour dire ça...).
Tu peut donc y accéder en faisant: this->m_secondes (car this est un pointeur)
			
		
	
 2: dans le prototype de la fonction  &duree est mis pour duree1 ou duree2 ?
si dans le code je met 
secondes += duree.m_secondes est ce different de 
secondes += duree2.m_secondes
 merci de repondre à mes questions
	 
	
	
	
		surcharge de l'operateur+
	
	
		Merci 3D Archi je te suis mieux.
	Citation:
	
		
		
			duree1 et duree2 ne sont connus comme symboles que dans main().
Dans Duree Duree::operator+(const Duree &duree), les variables connues sont this et duree. Lorsque tu fais l'appel duree1 + duree2, le compilateur se charge de faire correspondre this<->duree1 et duree<->duree2 (mécanisme de passage des paramètres).
D'ailleurs, comment ferais-tu pour
			
		
	
  
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 
 |  
int main()
{
duree duree1(12,36,45);
duree duree2(4,17,23);
duree resultat = duree1 + duree2;
duree duree3(1,7,12);
duree duree4(0,08,3);
resultat = duree3 + duree4;
} | 
  ce que je comprend de ce code 
c'est que  la meme methode operator+ fait addition des duree1 et duree2 et 
et de duree3 et duree4 
en consequence  
dans le premier  cas ce sera duree1.operator+ (duree2) 
duree1 est alors le this et duree2 le parametre c-a-dire (&duree)
dans l'autre cas 
ce sera duree3.operator+(duree4) et stocke cela dans resultat.
la nouvelle valeur de resultat sera alors la somme de duree3 et de duree4
duree3 est le this et duree4 sera passé alors en parametre(&duree).
merci