* 問題描述:* 程式頭部的注釋結束
#include #include#include using namespace std;
enum vehiclestaus ; //車輛狀態:泊車、行進
class vehicle //車輛類
;vehicle::vehicle(int maxs, int w) //建構函式,初始時,當前速度總為0且處在停車狀態
void vehicle::start() //由rest狀態到running, 初速為1
void vehicle::stop() //由running狀態到rest, 當前速度小於5時,才允許停車
else
else
}
void vehicle::slow_down() //減速,呼叫1次,速度減1,速度為0時,停車
} class bicycle :virtual public vehicle//(1)自行車類的虛基類為車輛類
;bicycle::bicycle(int maxs, int w, int h):vehicle(maxs,w) //定義建構函式
class motorcar :virtual public vehicle//(2)機動車類的虛基類也為車輛類
;motorcar::motorcar(int maxs, int w, int s, int p):vehicle(maxs,w) //定義建構函式
void motorcar::addpassenger(int p) //搭載乘客,超員要拒載,有人下車時,p為負數。當然車上乘客至少有1個(司機)。上下車時要保證安全……
總結:使用虛基類的好處:
當基類通過多條派生途徑被乙個派生類繼承時(像這裡的 自行車類和機動車類 都是車輛類的繼承),該派生類只繼承基類一次,也就是說,基類成員只保留一次。這樣可以減少呼叫次數,從而更加方便快捷。
第十二周任務3
include include include using namespace std enum vehiclestaus 車輛狀態 泊車 行進 class vehicle 車輛類 vehicle vehicle int maxs,int w 建構函式,初始時,當前速度總為0且處在停車狀態 void...
第十二周 任務三
程式頭部注釋開始 程式的版權和版本宣告部分 檔名稱 練習使用虛基類 作 者 薛廣晨 完成日期 2012 年 4 月 27 日 版 本 號 x1.0 對任務及求解方法的描述部分 輸入描述 練習使用虛基類 問題描述 任務3 在下面一段類的定義中,自行車類的虛基類為車輛類,機動車類的虛基類也為車輛類,電單...
第十二周任務二
教材p394習題9 分別定義teacher 教師 類和cadre 幹部 類,採用多重繼承方式由這兩個類派生出新類teacher cadre 教師兼幹部 要求 1 在兩個基類中都包含姓名 年齡 性別 位址 等資料成員。2 在teacher類中還包含資料成員title 職稱 在cadre類中還包含資料成...