“图形”类Shape中定义了纯虚函数CalArea(),“三角形”类Triangle继承了类Shape,请将Triangle 类中的CalArea函数补充完整。 #include <iostream> using namespace std; class Shape{ public: virtual double CalArea()=0; //求面积 }; class Triangle: public Shape{ public: Triangle(double s, double h):side(s),height(h){} ________________{ return side * height/2;} //求三角形面积 private: double side;//底边长 double height; //底边上的高 }; int main(){ Triangle tri(3,5); cout<<"triangle area="<<tri.calarea()<<endl; return 0; }<br><p class=" answer">
1、图形类的继承与派生(图形类派生出正方形类和圆类) (1)定义CShape类 操作: 求面积的纯虚函数virtual double area( ) =0; 输出的纯虚函数virtual void print( ) =0; (2)定义正方形类CSquare,公有继承CShape类 操作: 构造函数、setEdge、getEdge、求面积的虚函数virtual double area( ) ;输出的虚函数virtual void print( ) ;等 数据: 成员变量edge作为正方形的边长 (3)定义圆类CCircle,公有继承CShape类 操作: 构造函数、setRadius、getRadius、求面积的虚函数virtual double area( ) ;输出的虚函数virtual void print( ) ;等 数据: 成员变量radius作为圆的半径 (4)定义主函数,对正方形类CSquare和圆类CCircle的功能进行测试。