#include<iostream>
using namespace std;
class point
{
private:
float x, y;
public:
point(){x=0;y=0;}
point(float,float);
void Move(float xOff, float yOff);
float GetX();
float GetY();
};
point::point(float a,float b)
{
x=a;
y=b;
}
void point::Move(float xOff, float yOff)
{
x+=xOff;
y+=yOff;
}
float point::GetX()
{
return x;
}
float point::GetY()
{
return y;
}
class Rectangle:public point
{
private:
float w, h;
public:
Rectangle(){w=0;h=0;}
Rectangle(float,float,float,float);
float GetH();
float GetW();
};
Rectangle::Rectangle(float a,float b, float c, float d):point(a,b)
{
if(c<=0)
{
w=c=0;
}
if(d<=0)
{
h=d=0;
}
else
{
w=c;
h=d;
}
}
float Rectangle::GetH()
{
return h;
}
float Rectangle::GetW()
{
return w;
}
int main()
{
float a,b,c,d,e,f;
cin>>a>>b>>c>>d>>e>>f;
Rectangle r1(a,b,c,d);
r1.Move(e,f);
cout<<r1.GetX()<<' '<<r1.GetY()<<' '<<r1.GetW()<<' '<<r1.GetH()<<endl;
return 0;
}
SDUTOJ 2678 5-1 继承与派生
最新推荐文章于 2014-12-13 20:43:06 发布