Bonsoir a tous,
Je suis en train de voir le chapitre sur
la surcharge d'opérateurs et je rencontre un probleme:
Code : ConsoleProject : Console application
Compiler : GNU GCC Compiler (called directly)
Directory : D:\Documents and Settings\Nicolas\Mes documents\Programation\duree\
--------------------------------------------------------------------------------
Switching to target: default
Compiling: main.cpp
Compiling: Duree.cpp
Duree.cpp: In function `Duree operator+(const Duree&;)':
Duree.cpp:26: error: `m_heures' undeclared (first use this function)
Duree.cpp:26: error: (Each undeclared identifier is reported only once for each function it appears in.)
Process terminated with status 1 (0 minutes, 0 seconds)
2 errors, 0 warnings
Je pense avoir bien compris le cours mais la ca m'echape, je vous met le code:
main.cpp:
Code : C++#include <iostream>
#include "Duree.h"
using namespace std;
int main()
{
Duree duree1(0,65,65);
return 0;
}
Duree.h:
Code : C++#ifndef DEF_DUREE
#define DEF_DUREE
class Duree
{
public:
Duree(int heures = 0, int minutes = 0, int secondes = 0);
Duree operator+(const Duree &duree);
private:
int m_heures;
int m_minutes;
int m_secondes;
};
#endif
et Duree.cpp:
Code : C++#include <iostream>
#include "Duree.h"
using namespace std;
Duree::Duree(int heures, int minutes, int secondes) : m_heures(heures),
m_minutes(minutes), m_secondes(secondes)
{
if(secondes > 59)
{
m_secondes %= 60;
m_minutes = minutes + secondes / 60;
}
if(minutes > 59)
{
m_minutes %= 60;
m_heures = heures + minutes / 60;
}
}
Duree::Duree operator+(const Duree &duree)
{
int heures = m_heures;
int minutes;
int secondes;
}
Voila c'est surement tres bete mais je voie pas pourquoi il me dit que m_heures n'est pas declarer.
Merci de votre aide.
Edit: Desole, je vien de voir ma connerie.
Donc les autres comme moi ( y'en a d'autre rassurez moi !) qui vont se prendre la tete en fait c'est pas:
Code : C++Duree::Duree operator+(const Duree &duree)// c'est la que ca se passe
{
int heures = m_heures;
int minutes;
int secondes;
}
mais:
Code : C++Duree Duree::operator+(const Duree &duree)//hahaha! faut le voir celui la! :lol:
{
int heures = m_heures;
int minutes;
int secondes;
}
voila encore dsl pour ce poste inutile!