6-4

来源:互联网 发布:线条底纹生成软件 编辑:程序博客网 时间:2024/06/05 05:02
#include <iostream.h>class Shape{public:virtual double area()const =0;};class Circle:public Shape{public:Circle(double r):radius(r){}virtual double area() const{ return 3.1415*radius*radius;}protected:double radius;};class Rectangle :public Shape{public:Rectangle(double l,double w):length(l),width(w){}virtual double area()const{ return length*width;}protected:double length;double width;};class Triangle:public Shape{public:Triangle(double d,double h):dibian(d),height(h){}virtual double area() const{ return 0.5*dibian*height;}protected:double dibian;double height;};void display(const Shape &s){ cout<<s.area()<<endl;}int main(){ Circle c(4); cout<<"area of c is "; display(c); Rectangle r(2,4); cout<<"area of r is "; display(r); Triangle t(1,2); cout<<"area of t is "; display(t); return 0;}

0 0