#include <iostream>
#include<Cmath>
using namespace std;
class Point{
public:
Point(double x0=0,double y0=0):x(x0),y(y0){};
inline double getx(){return x;}
inline double gety(){return y;}
void PrintPoint();
private:
double x,y;
};
void Point::PrintPoint(){
cout<<"Point:("<<x<<","<<y<<")";
}
class Line:public Point
{
public:
Line(Point pts,Point pte):pts(pts),pte(pte){};
double Length();
void PrintLine();
private:
class Point pts,pte;
};
double Line::Length(){
return sqrt((pts.getx()-pte.getx())*(pts.getx()-pte.getx())+(pts.gety()-pte.gety())*(pts.gety()-pte.gety()));
}
void Line::PrintLine(){
cout<<"point message: ("<<(pts.getx()-pte.getx())/2<<","<<(pts.gety()+pte.gety())/2<<")"<<endl;
}
int main(){
Point ps(-2,5),pe(7,9);
Line l(ps,pe);
cout<<"\n The Length of line ";
cout<<l.Length()<<endl;
cout<<"\n The minddle point of Line";
l.PrintLine();
}
运行结果: