點 圓 圓柱類族的設計

#include
using namespace std;
class Point
{
public:
    Point(double xx,double yy)
    {
        x=xx;
        y=yy;
    }
    void Show_point()
    {
        cout<<"中心座標爲:"<<"("<<x<<","<<y<<")"<<endl;
    }
private:
    double x;
    double y;
};
class Circle:public Point
{
public:
    Circle(double xx,double yy,double rr):Point(xx,yy),r(rr){}
    double area()
    {
        return 3.14*r*r;
    }
    double circum()/*周長*/
    {
        return 2*3.14*r;
    }
private:
    double r;
};
class Cylinder:public Circle
{
public:
    Cylinder(double xx,double yy,double rr,double hh):Circle(xx,yy,rr),h(hh){}
    void area()
    {
        cout<<"圓柱的表面積爲:"<<h*Circle::circum()+2*Circle::area()<<endl;
    }
    void volume()
    {
        cout<<"圓柱的體積爲:"<<h*Circle::area()<<endl;
    }
private:
    double h;
};
int main()
{
    Cylinder a(2,2,3,4);
    a.Show_point();
    a.area();
    a.volume();
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章