房天下 > 房天下问答 > 业主生活 > 其他
  • 用C++编程

    1.设计一个基类Base,其作用是计算一个图形的面积,它只有一个公有的函数成员虚函数area。再从Base 类公有派生一个三角形类Triangle 和一个圆类Circle,在类Triangle和类Circle 中分别定义自己的area 函数,用于计算各自的面积。在主函数中设计一个Base类的对象指针,分别指向类Triangle 和类Circle 的对象,调用各自的area 函数显示相应对象的面积。分析:用虚函数实现多态。2.将上题中的Base 类改为抽象类,应用抽象类,求矩形、圆形的周长和面积。分析:将Base 类的其成员函数area 和perimeter 声明为纯虚函数,Base 就成为一个抽象类。然后再从Base 派生矩形类和圆形类,分别实现Base 中纯虚函数的功能。

    提问者:快乐男主妇

    发布于2010-09-29

共1个回答
  • xuhao1108 丨Lv 4
    #include<iostream.h>const float PI=3.1416;class base{public: virtual void area() { cout<<"base::area()"<<endl; }};class Triangle:public base{private: float a,h;public: Triangle() { cout<<"请输入三角形的底边a和高h:"<<endl; cin>>a>>h; } void area() { cout<<"三角形的面积是:"<<a*h/2<<endl; }};class Circle:public base{private: float r;public: Circle() { cout<<"请输入圆的半径r:"<<endl; cin>>r; } void area() { cout<<"圆的面积是:"<<PI*r*r<<endl; }};int main(){ base *b1,*b2; b1=new Triangle; b2=new Circle; b1->area(); b2->area(); return 0;}base改为抽象类时,只需将base类中的area函数定义改为:virtual void area()=0;
    +1 2010-09-29 举报
热门人气推荐
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。