声明一个Shape抽象类,在此基础上派生出矩形Rectangle和圆Circle类,二者都有GetArea( )函数计算对象的面积,GetPerim( )函数计算对象的周长。完成类的设计,其中PI取3.14159,要求不能修改主函数。
int main(){
double radius;//圆半径
double a,b;//矩形长和宽
cin>>radius>>a>>b;
Circle c(radius);
Rectangle rect(a,b);
Shape* pShapeArray[]={&c,&rect};
for (int i=0;i<2;i++){
cout<<"perimeter:"<<pShapeArray[i]->GetPerim( )<<endl;
cout<<"area:"<<pShapeArray[i]->GetArea()<<endl;
}
return 0;
}
1
2 3
perimeter:6.28318
area:3.14159
perimeter:10
area:6