#include
#include
using namespace std;
class Point
{
public:
Point(double xi =0,double yi=0)
{x=xi;y=yi;}
double GetX(){return x;}
double GetY(){return y;}
private:
double x;
double y;
};
class Distance
{
public:
Distance(Point xp1,Point xp2):
p1(xp1),p2(xp2)
{
double x =pl.GetX()-p2.GetY();
double y =p1.GetY()-p2.GetY();
double dis =sqrt(x*x+y*y);
}
double Getdis()
{
return dis;
}
private:
double dis;
Point p1,p2;
};
int main()
{
Point mp1(1,0),mp2(2,2);
Distance mdis(mp1,mp2);
cout<<"the distance is :"<<mdis.Getdis()<<endl;
}
double x =pl.GetX()-p2.GetY();这一句中把数字“1”打成字母“l”了
3个错误:
1.p1写成了pl
2.double x = p1.GetX() - p2.GetY();应该是double x = p1.GetX() - p2.GetX();
3.double dis =sqrt(x*x+y*y);应该是dis =sqrt(x*x+y*y);
#include<iostream>
#include<cmath>
using namespace std;
class Point
{
public:
Point(double xi = 0, double yi = 0)
{
x = xi; y = yi;
}
double GetX(){ return x; }
double GetY(){ return y; }
private:
double x;
double y;
};
class Distance
{
public:
Distance(Point xp1, Point xp2) :
p1(xp1), p2(xp2)
{
double x = p1.GetX() - p2.GetX();
double y = p1.GetY() - p2.GetY();
dis = sqrt(x*x + y*y);
}
double Getdis()
{
return dis;
}
private:
double dis;
Point p1, p2;
};
int main()
{
Point mp1(1, 0), mp2(2, 2);
Distance mdis(mp1, mp2);
cout << "the distance is :" << mdis.Getdis() << endl;
}