【说明】
以下程序的功能是计算三角形、矩形和正方形的面积并输出。
程序由4个类组成:类Triangle、Rectangle和Square分别表示三角形、矩形和正方形;抽象类Figure提供了一个纯虚拟函数getArea(),作为计算上述3种图形面积的通用接口。
【C++程序】
#include<iostream.h>
#include<math.h>
class Figure
public:
virtual double getArea()=0; //纯虚拟函数
;
class Rectangle: (1)
protected:
double height;
double width;
public:
Rectangle() ;
Rectangle(double height,double width)
this->height=height;
this->width=width;
double getArea()
return (2) ;
;
class Square: (3)
public:
Square(double width)
(4) ;
;
class Triangle: (5)
double la;
double lb;
double lc;
Public:
Triangle(double la, double lb, double lc)
This->la=la; this->lb=lb; this->lc=lc;
double getArea()
double s = (la+lb+±c)/2.0;
return sqrt(s,(s-l
- a)*(s-l
- b)*(s-I
- c));
;
void main()
Figure*figures[3]=
new Triangle(2,3,3), new Rectangle(5,8), new SqUare(5));
for(int i=0;i<3;i++)
cout<<"figures["<<i<<"]area="<<(figures[i])->getArea()<<endl;