8 24 物件導向設計案例

2021-10-23 18:52:53 字數 3423 閱讀 4820

//設定乙個圓形類和乙個點類,判斷點和圓的關係

#include

using

namespace std;

class

point

intgetx()

void

sety

(int y)

intgety()

private

:int m_x;

int m_y;};

class

circle

intgetr()

void

setcenter

(point p)

point getcenter()

//利用成員函式判斷點和圓的關係

void

isincirclebyclass

(point &p)

else

if(rdistanceelse

}private

:int m_r;

//半徑

point m_center;

//圓心};

//利用全域性函式判斷點和圓的關係

void

isincircle

(circle &c,point &p)

else

if(rdistanceelse

}void

test01()

intmain()

//設計立方體類,求出立方體的面積和體積,分別用全域性函式和成員函式判斷兩個立方體是否相等

#include

using

namespace std;

class

cub//獲取長

intgetl()

//設定寬

void

setw

(int w)

//獲取寬

intgetw()

//設定高

void

seth

(int h)

//獲取高

intgeth()

//求立方體的面積

void

getcubes()

//求立方體的體積

void

getcubev()

//通過成員函式判斷兩個立方體是否相等

bool

comparecubebyclass

(cub&cub)

private

:int m_l;

//長int m_h;

//高int m_w;

//寬}

;//用全域性函式判斷兩個立方體是否相等

bool

comparecube

( cub & cub1, cub & cub2)

return

false;}

void test01 (

)else

//通過成員函式判斷兩個立方體是否相等

bool ret2 = c1.

comparecubebyclass

(c2);if

( ret2)

else

}int

main()

此外還有標頭檔案的應用,圓類物件導向的設計

//設定乙個圓形類和乙個點類,判斷點和圓的關係

#include

using

namespace std;

#include

"point.h"

#include

"circle.h"

//利用全域性函式判斷點和圓的關係

void

isincircle

(circle &c,point &p)

else

if(rdistanceelse

}void

test01()

intmain()

#pragma once

#include

using

namespace std;

//點類

class

point

*/int

getx()

;/* */

void

sety

(int y)

;/**/

intgety()

;/**/

private

:int m_x;

int m_y;

};

#include

"point.h"

void point::

setx

(int x)

int point::

getx()

void point::

sety

(int y)

int point::

gety()

#pragma once

#include

#include

"point.h"

using

namespace std;

//圓類

class

circle

*/int

getr()

;/**/

void

setcenter

(point p)

;/**/

point getcenter()

;/**/

//利用成員函式判斷點和圓的關係

void

isincirclebyclass

(point& p);/*

else if ( rdistance < distance )

else

*/private

:int m_r;

//半徑

point m_center;

//圓心

};

#include

"circle.h"

void circle::

setr

(int r)

int circle::

getr()

void circle::

setcenter

(point p)

point circle::

getcenter()

//利用成員函式判斷點和圓的關係

void circle::

isincirclebyclass

(point& p)

else

if( rdistance < distance )

else

}

物件導向學習案例

修乙個房子 位址 戶型 總面積 貼地板 占地面積 每貼一塊地板 房子的面積會減少乙個地板的面積 兩個類乙個貼地板的方法 房子的總面積 占地面積 剩餘面積 房子裡面有多少地板 屬性 簡單的類 被使用的類通常先開發 class floor object 地板類 def init self,name,mi...

python物件導向案例

小結 格式化字串需要注意 傳入的引數以及返回值 oop2.py 需求 房子 house 有 戶型 總面積 和 家具名稱列表 新房子沒有任何的家具 家具 houseitem 有 名字 和 占地面積,其中 席夢思 bed 占地 4 平公尺 衣櫃 chest 占地 2 平公尺 餐桌 table 占地 1....

物件導向封裝案例

封裝是物件導向程式設計的一大特點 物件導向程式設計的第一步 將屬性和方法封裝到乙個抽象的類中 外界使用類建立物件,然後讓物件呼叫方法物件方法的細節都被封裝在類的內部 class person 人類 def init self,name,weight self.name name self.weigh...