|
Advance Member
|
代碼:
class FloorButton {
private:
int floor;
string buttonText;
Elevator* pElevator;
public:
FloorButton();
FloorButton(string buttonText, Elevator* pElv, int f);
void press();
};
class Elevator {
private:
int currentFloor;
public:
Elevator();
//假設這棟樓有5層.
FloorButton *pFloorBtn1;
FloorButton *pFloorBtn2;
FloorButton *pFloorBtn3;
FloorButton *pFloorBtn4;
FloorButton *pFloorBtn5;
void setFloor(int n);
int getFloor();
};
這樣瞭了嗎?
在物件導向程式設計中,會常常看到"屬性", "行為", "成員", "成員函式"之類的名詞;"屬性"即是"成員","行為" 即是"成員函式",有時候它們會被混合著使用。在這裡,電梯就具有"目前樓層"和"樓層按鈕"的成員,以及一些"成員函式"像是"前往樓層", "停止"或是"掉落"之類的。而按鈕也是類別,也有自己的屬性(按鈕上的文字和代表的樓層)和行為(按下)等等。
P.S. 這個電梯和按鈕的設計很簡陋,例如一次只能前往一個樓層,不能開關門之類的,而且我覺得我的架構設計得有點糟 - 但是應該可以解釋你的疑點...
__________________
現今世道,自爆文當故事書,站長的話做成語錄,幾百年前的文章嘛沒事就挖出來考古...
|