几何图形面积classShape{public:virtualdoublearea()=0;};classRectangle:publicShape{public:Rectangle(doublew=1.0,doubleh=1.0){width=w;height=h;}doublearea(){returnwidth*height;}private:doublewidth;doubleheight;};classCircle:publicShape{public:Circle(doubler=1.0){radius=r;}doublearea(){return3.14159*radius*radius;}private:doubleradius;};