Hola a todos,estoy empezando a trabajar con objetos y soy nuevo en este mundo de los objetos, por eso estoy implementando un pequeño programita y tengo un error de compilacion ,pero no se el porque¡¡
este es el programita y el error que me da dice:
/*
Punto.cpp:33: error: el prototipo para ‘Punto::Punto(double, double)’ no coincide con ningún otro en la clase ‘Punto’
Punto.cpp:6: error: los candidatos son: Punto::Punto(const Punto&)
Punto.cpp:6: error: Punto::Punto()
*/
#include<iostream>
#include<math.h>
//#include"Punto.h"
using namespace std;
class Punto{
private:
double x,y;
public:
void SetX(double vx);
void SetY(double vy);
Punto Translacionar(double d);
double Distancia(Punto p2);
double GetX();
double GetY();
};
/*
class Punto{
public:
Punto(double vx,double vy);
};
*/
/*
Punto::Punto(){
x=0;
y=0;
}
*/
Punto::Punto(double vx,double vy){
SetX(vx);
SetY(vy);
}
void Punto::SetX(double vx){
if(vx<0) x=0;
else x=vx;
}
/*
Punto::Punto(double vx,double vy){
SetX(vx);
SetY(vy);
}
*/
/*
Punto Punto::Translaccionar(double d){
Punto paux;
paux.SetX(d+x);
paux.SetY(d+y);
return paux;
}
*/
double Punto::Distancia (Punto p2){
return sqrt(pow(x-p2.x,2) + pow(y-p2.y,2));
}
double Punto::GetX(){
return x;
}
double Punto::GetY(){
return y;
}
int main(){
Punto p1,p2;
p1.SetX(-3);
p2.SetX(+6);
cout<<p1.Distancia(p2);
cout<<endl;
cout<<p2.Distancia(p1);
cout<<endl;
//p1=p2.Translacionar(81);
cout<<p1.GetX()<<"-"<<p1.GetY();
cout<<endl;
cout<<p2.GetX()<<"-"<<p2.GetY();
cout<<endl;
}
Muchas gracias,os agradecería vuestra ayuda,gracias.