#include // pourquoi accepte-t-il le set sur la variable const? class Rationnel{ private: int numerateur; int denominateur; public: Rationnel(void); Rationnel(int n, int d); Rationnel(const Rationnel & x); int getNumerateur(void) const; int getDenominateur(void) const; Rationnel & setNumerateur(int n); Rationnel & setDenominateur(int d); void afficher(void) const; }; int main(void){ Rationnel F(3,4); const Rationnel UneDemi(1,2); Rationnel H(UneDemi); Rationnel J(F); cout << "\n"; F.afficher(); cout << "\n"; UneDemi.afficher(); cout << "\n"; H.afficher(); cout << "\n"; J.afficher(); cout << "\n"; return 0; } Rationnel::Rationnel(void): numerateur(1), denominateur(1) { } Rationnel::Rationnel(int n, int d): numerateur(n), denominateur(d) { } Rationnel::Rationnel(const Rationnel & x){ numerateur = x.getNumerateur(); denominateur = x.getDenominateur(); cout << "\ndans le constructeur de copie"; } int Rationnel::getNumerateur(void) const { return numerateur; } int Rationnel::getDenominateur(void) const{ return denominateur; } void Rationnel::afficher(void) const{ cout << "(" << numerateur << " / " << denominateur << ")"; } Rationnel & Rationnel::setNumerateur(int n) { numerateur = n; return *this; } Rationnel & Rationnel::setDenominateur(int d){ denominateur = d; return *this; }