题目如下
下列shape类是一个表示形状的抽象类,length()为求图形周长的函数,total()则是一个通用的用以求不同形状的图形周长总和的函数。请从shape类派生三角形类(striangle),矩形类(rectangle),并给出具体的求周长函数。给出shape,total的定义如下所示。
class shape{
public:
virtual float length()=0
};
float total(shape *s[],int n)
{
float sum = 0.0;
for(int i=0;i<n;i++)
sum+=s[i]->length();
return sum;
}
再写两个类striangle 和rectangle,继承这个shape类,同时在这两个类中写出具体求周长的函数;
代码如下
#include<iostream>
using namespace std;