OJ 繼承與組合類問題之 Shape系列 5

2021-07-03 07:48:21 字數 2269 閱讀 8036

jc和kitty聽說小亮和小華有了rectangle和circle並用rsubc模擬較了大小

,於是想借小亮和小華的rectangle和circle來仿製自己的形狀,於是jc和kitty完成了自己的rectangle類和circle類,他們兩個也要比較一下形狀大小。

但是jc和kitty

沒有為rsubc1類(其中的布林型別

sign等於0時,新面積等於rectangle+circle,sign等於1時,新面積等於rectangle-circle

)寫建構函式與area面積函式,請幫助

jc和kitty完成rsubc1類。

//小強寫的檔案頭和各種類

#include

using namespace std;

#define pi 3.14

class shape

;shape::shape()

shape::shape(int c):color(c){}

int shape::getcolor()

double shape::area()

class rectangle:public shape

; rectangle::rectangle()

rectangle::rectangle(int c, double w,double h):shape(c)

double rectangle::getwidth()

double rectangle::area()

double rectangle::getheight()

double rectangle::price()

class circle:public shape

double area();

protected:

double radius;

};circle::circle()

circle::circle(int c,double r):shape(c)

double circle::area()

// rsubc1類

class rsubc1:public shape

;//jc和katy的測試函式:

int main()

無輸出jc和katy測試的

rsubc類

的面積。

#includeusing namespace std;

#define pi 3.14

class shape

;shape::shape()

shape::shape(int c):color(c){}

int shape::getcolor()

double shape::area()

class rectangle:public shape

;rectangle::rectangle()

rectangle::rectangle(int c, double w,double h):shape(c)

double rectangle::getwidth()

double rectangle::area()

double rectangle::getheight()

double rectangle::price()

class circle:public shape

double area();

protected:

double radius;

};circle::circle()

circle::circle(int c,double r):shape(c)

double circle::area()

// rsubc1類

class rsubc1:public shape

;//jc和katy的測試函式:

rsubc1::rsubc1(int c,double w,double h,double r,bool s):shape(c),rectangle(c,w,h),circle(c,r),sign(s){}

double rsubc1::area()

int main()

{ rsubc1 rc1=rsubc1(3,2,3,1,1);

rsubc1 rc2=rsubc1(1,2,1,2,0);

cout<<"rc1 area="《趕時間呢就不貼執行結果了   這個可以參照之前做過的專案儲存班長資訊的學生類

繼承與組合用起來有點兒不熟練

另外因為輸出問題導致oj上的題老是不能通過  這個我已經真心給跪了》<

一邊敲**一邊氣的不行...

OJ 繼承與組合

已知類如下 1 birthdate 生日類 含有 year,month,day 等資料成員 2 teacher 教師類 含有 num,name,等資料成員 3 professor 教授類 含有 教師類和生日類的資料成員 要求 1 通過對teacher和birthdate使用繼承和組合的方式設計pro...

類的繼承與組合

無論是繼承與組合本質上都是把子物件放在新型別中,兩者都是使用建構函式的初始化列表去構造這些子物件。組合中是希望新類的內部具有已存在的類的一些功能的時候使用,而不是希望將已存在類作為它的介面。組合通過嵌入乙個物件以實現新類的功能,而新類使用者看到的將是新定義的類的介面,而不是來自老類的一些介面。比如,...

類的繼承與組合

物件 object 是類 class 的乙個例項 instance 如果將物件比作房子,那麼類就是房子的設計圖紙。所以物件導向設計的重點是類的設計,而不是物件的設計。對於c 程式而言,設計孤立的類是比較容易的,難的是正確設計基類及其派生類。本章僅僅論述 繼承 inheritance 和 組合 com...