C++继承与多态,虚函数

类定义如下: class shape{ protected: double r; public: shape(double x){r=x;} virtual void area()=0; virtual void perimeter()=0; }; (1) 以shape类为基类,派生一个circle圆形类,在派生类中对shape类中求面积和周长的虚函数进行重载。 (2) 对类进行实例化,输出运算结果

class shape
{ 
	protected: double r; 
	public: shape(double x){r=x;} 
	virtual float area()=0; 
	virtual float perimeter()=0;
}; 

class circle : public shape
{
public:
	circle(double x):shape(x) {}
	float area() {return 3.14159*r*r;}
	float perimeter() {return 2*3.14159*r;}
};

int main()
{
	circle c(10);
	printf("area=%g,perimeter=%g",c.area(),c.perimeter());
  
    return 0;
}

 

子类只需要重写基类同名函数就可以啦

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632