#include <iostream>
#include <cmath>
using namespace std;
class Point//基类Point
{
protected:
double x1, y2;
public:
Point(double a, double b);//功能为x1,y1初始化
void print(); //功能输出点的坐标
};
Point::Point(double a, double b)
{
x1 = a;
y2 = b;
}
void Point::print()
{
cout << "(" << x1 << "," << y2 << ")" << endl;
}
class Line :public Point//派生类Line
{
private:
double x2, y2;
double d;
public:
Line(double a, double b, double c, double d);//功能为x2,y2初始化
void distance();//功能为求出两点间的距离d
void show(); //功能输出两点坐标和两点间距离
};
Line::Line(double a, double b, double c, double d) :Point(c, d)
{
x2 = a;
y2 = b;
}
void Line::distance()
{
double s = (x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2);
d = sqrt(s);
}
void Line::show()
{
cout << "线段的长度是:" << d << endl;
}
int main()
{
Line l(1, 2, 3, 4);
l.distance();
l.print();
l.show();
return 0;
}
