no matching function for call to 'Point::affiche(Point&)'

no matching function for call to 'Point::affiche(Point&)' - C++ - Programmation

Marsh Posté le 19-05-2015 à 20:58:06    

je travaille sur une class Point qui contient des setters et des getters et deux méthodes qui contient ces setters mais je reçois une erreur comme suite no matching function for call to 'Piont::affiche(Point& )'
le fichier Point.h :

Code :
  1. #ifndef POINT_H
  2. #define POINT_H
  3. class Point
  4. {
  5.     public:
  6.         Point();
  7.         virtual ~Point();
  8.         Point(const Point& other);
  9.         void affiche();
  10.         float deplace(float x, float y);
  11.         float getAbscisse() const;
  12.         float getOrdonnee() const;
  13.         void setAbscisse(float abs);
  14.         void setOrdonnee(float ord);
  15.     private:
  16.         float abscisse;
  17.         float ordonnee;
  18. };
  19. #endif // POINT_H


le fichier Point.cpp :

Code :
  1. #include "Point.h"
  2. #include <iostream>
  3. Point::Point()
  4. {
  5.     //ctor
  6. }
  7. Point::~Point()
  8. {
  9.     //dtor
  10. }
  11. Point::Point(const Point& other)
  12. {
  13.     //copy ctor
  14. }
  15. Point::affiche(Point p)
  16. {
  17.     cout<<"les cordonnées du point sont:"<<p.getAbscisse()<<p.getOrdonnee();
  18. }
  19. Point::deplace(Point p)
  20. {
  21.     float d;
  22.     cout<<"pour déplacer le point entrer un taux de déplacement"<<endl;
  23.     cin>>d;
  24.     cout<<" "<<endl;
  25.     p.setAbscisse(abscisse)=p.setAbscisse(abscisse)+d;
  26.     p.setOrdonnee(ordonnee)=p.setOrdonnee(ordonnee)+d;
  27. }
  28. Point::setAbscisse(float abs)
  29. {
  30.     abs=abscisse;
  31. }
  32. Point::setOrdonnee(float ord)
  33. {
  34.     ord=ordonnee;
  35. }
  36. Point::getAbscisse() const
  37. {
  38.     return abscisse;
  39. }
  40. Point::getOrdonnee() const
  41. {
  42.     return ordonnee;
  43. }


le fichier main.cpp:

Code :
  1. #include <iostream>
  2. #include "Point.h"
  3. #include <cstdlib>
  4. using namespace std;
  5. int main()
  6. {
  7.     Point p;
  8.     float abs, ord;
  9. cout<<"entrer les cordonnées du point"<<endl;
  10. cin>>abs>>ord;
  11. cout<<" "<<endl;
  12. p.setAbscisse(abs);
  13. p.setOrdonnee(ord);
  14. p.affiche(p);
  15. p.deplace(abs,ord);
  16. p.affiche(p);
  17.     return 0;
  18. }

Reply

Marsh Posté le 19-05-2015 à 20:58:06   

Reply

Marsh Posté le 19-05-2015 à 23:02:28    

Dans ton CPP il manque les types de retours de tes fonctions. Je doute fortement que tu puisses t'en passer.


---------------
"I can cry like Roger. It's just a shame I can't play like him" - Andy Murray, 2010
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed