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

2021-07-03 03:37:30 字數 1472 閱讀 9682

問題及**:

/*

*檔名稱:project.cpp

*作 者:陳文青

*完成日期:2023年6月6日

*版 本 號:v1.0

**問題描述:設計乙個抽象類csolid,含有用於求表面積及體積的兩個純虛函式。

設計派生類ccube、cball、ccylinder,分別表示正方體、球體及圓柱體。

在main()函式中,定義csolid *p;(p是指向基類的指標,且這個基類是個抽象類)。

要求利用這個p指標,能夠求出正方體、球體及圓柱體物件的表面積及體積。

*程式輸入:

*程式輸出:

*/#includeusing namespace std;

//定義虛基類

class csolid

;//定義正方體類

class ccube:public csolid

//長方體類的建構函式

double get_area()

double get_volume()

protected:

double length; //長

double width; //寬

double height; //高

};//定義球體類

class cball:public csolid

//球體的建構函式

double get_area()

double get_volume()

protected:

double radius; //半徑

};//定義圓柱體類

class ccylinder:public csolid

//圓柱的建構函式

double get_area()

double get_volume()

protected:

double radius; //地面半徑

double height; //高

};//測試函式

int main()

{ double s,v; //表示表面積和體積

csolid *p; //指向基類的指標

知識點總結:

抽象類的定義: virtual   加上  =0;

只有繼承虛函式,並覆蓋了同名的虛函式,才可以利用指向基類的指標自由指向派生類的同名成員函式,實現動態多型性

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

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

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

檔名稱 time.cpp 版本號 v1.0 問題描述 設計乙個抽象類csolid,含有用於求表面積及體積的兩個純虛函式。設計派生類ccube cball ccylinder,分別表示正方體 球體及圓柱體。在main 函式中,定義csolid p p是指向基類的指標,且這個基類是個抽象類 要求利用這個...

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

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