第12周 專案3 立體類族共有的抽象類

2021-07-02 22:33:40 字數 1547 閱讀 6018

問題及**:

/*   

*檔名稱:csolid.cpp

*作 者:單昕昕

*完成日期:2023年5月29日

*版 本 號:v1.0

*問題描述:

設計乙個抽象類csolid,含有用於求表面積及體積的兩個純虛函式。設計派生類ccube、cball、ccylinder,分別表示正方體、球體及圓柱體。在main()函式中,定義csolid *p;(p是指向基類的指標,且這個基類是個抽象類)。要求利用這個p指標,能夠求出正方體、球體及圓柱體物件的表面積及體積。

*程式輸入:無。

*程式輸出:定義的幾個幾何體的面積和。正方體、球體及圓柱體物件的表面積及體積。

*/ #include #include using namespace std;

const double pi=acos(-1.0);

class csolid

virtual double volume() const

};//正方體

class ccube : public csolid

virtual double area() const;

virtual double volume() const;

};double ccube::area() const

double ccube::volume() const

//球體

class cball : public csolid

virtual double area() const;

virtual double volume() const;

};double cball::area() const

double cball::volume() const

//圓柱體

class ccylinder : public csolid

virtual double area() const;

virtual double volume() const;

};double ccylinder::area() const

double ccylinder::volume() const

int main()

{    ccube c1(12.6),c2(4.9);//建立ccube類物件c1,c2,引數為正方體邊長

cball b1(8.4),b2(2.5);//建立cball類物件b1,b2,引數為球體半徑

ccylinder t1(4.5,8.4),t2(3.4,2.8); //建立ccylinder類物件t1,t2,引數為圓柱體底邊半徑與高

csolid *p;

p=&c1;

cout<

執行結果:

知識點總結:

抽象類。

學習心得:

就是比上乙個專案複雜了一丟丟,感覺木有書上的例程難。

第13周專案3 立體類族共有的抽象類

檔名稱 test.cpp 作 者 王元陽 完成日期 2015 年 6 月 3 日 版 本 號 v1.0 問題描述 設計乙個抽象類csolid,含有用於求表面積及體積的兩個純虛函式。設計派生類ccube cball ccylinder,分別表示正方體 球體及圓柱體。在main 函式中,定義csolid...

第13周專案4 立體類族共有的抽象類

檔名稱 第13周專案4 立體類族共有的抽象類 完成日期 2016.6.1 版本號 v1.0 問題描述 設計乙個抽象類csolid,含有用於求表面積及體積的兩個純虛函式。設計派生類ccube cball ccylinder,分別表示正方體 球體及圓柱體。在main 函式中,定義csolid p p是指...

第13周專案四 立體族類共有的抽象類

煙台大學計算機學院 檔名稱 xiangmu1.cpp 作 者 李亞輝 完成日期 2016年6月23日 版 本 號 vc 6.0 問題描述 設計乙個抽象類csolisd,含有用於求表面積及體積的兩個純虛數,並設計派生類,求表面積與體積 輸入描述 長寬高等數值 程式輸出 定義的幾個幾何體的表面積與體積 ...