派生与继承
2012-05-24 10:12
127 查看
#include<iostream>
#include<cmath>
using namespace std;
class Point
{
private:
int x,y;
public:
Point(int a=0,int b=0){SetPoint(a,b);}
void SetPoint(int a,int b)
{
x=a;
y=b;
}
int GetX(){return x;}
int GetY(){return y;}
void Print()
{
cout<<"开始点:"<<'['<<x<<','<<y<<"],";
}
};
class Line:public Point
{
private:
Point EndPoint;
public:
Line(int a,int b,int c,int d):Point(a,b),EndPoint(c,d){} //EndPoint组合成员
void Print()
{
Point::Print();
cout<<"结束点:["<<EndPoint.GetX()<<','<<EndPoint.GetY()<<']';
}
double Length()
{
double xx=Point::GetX()-EndPoint.GetX();
double yy=Point::GetY()-EndPoint.GetY();
double l=sqrt(xx*xx+yy*yy);
return l;
}
};
int main(){
Line line(1,1,10,10);
cout<<"Line line:";
line.Print();
cout<<"\n线line的长度:";
cout<<line.Length()<<endl;
return 0;
}
#include<cmath>
using namespace std;
class Point
{
private:
int x,y;
public:
Point(int a=0,int b=0){SetPoint(a,b);}
void SetPoint(int a,int b)
{
x=a;
y=b;
}
int GetX(){return x;}
int GetY(){return y;}
void Print()
{
cout<<"开始点:"<<'['<<x<<','<<y<<"],";
}
};
class Line:public Point
{
private:
Point EndPoint;
public:
Line(int a,int b,int c,int d):Point(a,b),EndPoint(c,d){} //EndPoint组合成员
void Print()
{
Point::Print();
cout<<"结束点:["<<EndPoint.GetX()<<','<<EndPoint.GetY()<<']';
}
double Length()
{
double xx=Point::GetX()-EndPoint.GetX();
double yy=Point::GetY()-EndPoint.GetY();
double l=sqrt(xx*xx+yy*yy);
return l;
}
};
int main(){
Line line(1,1,10,10);
cout<<"Line line:";
line.Print();
cout<<"\n线line的长度:";
cout<<line.Length()<<endl;
return 0;
}
相关文章推荐
- C 习题和解析(继承和派生-02)
- C++ 之 继承和派生(1)
- c++继承、派生
- 【C++】继承和派生
- C++考试篇二:继承与派生
- C++的派生和继承
- C/C++学习----第二章 继承和派生
- * 继承与派生 编程题#1(Coursera 程序设计与算法 专项课程3 C++程序设计 郭炜、刘家瑛;OpenJudge)
- 继承与派生:派生类对基类成员的访问控制之公有继承
- C++程序设计-第11周 继承与派生
- 第十三周--项目2-采用多重继承方式由Teacher类和Cadre类派生出Teacher_Cadre
- 第11周 程序阅读——继承和派生 自选阅读(3)
- c++ 类的继承与派生
- 第11周-程序阅读继承和派生构造析构函数顺序
- 第十周——面向对象——继承与派生——项目四(3)类族的设计
- 十一周——继承与派生——阅读程序(4)
- C++继承与派生访问权限
- 第二章继承与派生
- 十一周——继承与派生——项目四 圆的关系
- 【C++学习历程6】继承和派生