class Shape
{public:
Shape(){}
~Shape(){}
virtual float GetPerim()=0;
}
答案:class Rectangle:public Shape
{public:
Rectangle(float i,float j):L(i),W(j){}
~Rectangle(){}
float GetPerim(){return 2*(L+W);}
private:
float L,W;
};
class Circle:public Shape
{public:
Circle(float r):R(r){}
float GetPerim(){return 3.14*2*R;}
private:
float R;
};
void main()
{Shape * sp;
sp=new Circle(10);
cout<<sp->GetPerim ()<<endl;
sp=new Rectangle(6,4);
cout<<sp->GetPerim()<<endl;
}
|