問題描述:
在下面一段類的定義中,自行車類的虛基類為車輛類,機動車類的虛基類也為車輛類,電單車類的基類為自行車類和機動車類,類之間均為公有繼承,如圖所示。
motorcar.exe,先執行再程式設計。不必申請駕照,這個電單車很安全。)
(4)在報告中,請用自己的話寫清楚使用虛基類解決什麼問題?
#include #include#include using namespace std;
enum vehiclestaus ; //車輛狀態:泊車、行進
class vehicle //車輛類
;class bicycle :_____(1)_________//(1)自行車類的虛基類為車輛類
;class motorcar : ______(2)__________//(2)機動車類的虛基類也為車輛類
;class motorcycle: ______(3)_________ //(3)電單車類的基類為自行車類和機動車類
;int main( )
return 0;
}
參考執行結果如下:
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是1-啟動 狀態:行進; 車速:1 / 90 當前乘員:1 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是2-加速 狀態:行進; 車速:2 / 90 當前乘員:1 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是2-加速 狀態:行進; 車速:3 / 90 當前乘員:1 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是4-有人上車 車輛正在行駛,停車後再上下車!
狀態:行進; 車速:3 / 90 當前乘員:1 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是5-有人下車 車輛正在行駛,停車後再上下車!
狀態:行進; 車速:3 / 90 當前乘員:1 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是6-停車 狀態:泊車; 車速:0 / 90 當前乘員:1 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是4-有人上車 狀態:泊車; 車速:0 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是1-啟動 狀態:行進; 車速:1 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是2-加速 狀態:行進; 車速:2 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是2-加速 狀態:行進; 車速:3 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是2-加速 狀態:行進; 車速:4 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是2-加速 狀態:行進; 車速:5 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是2-加速 狀態:行進; 車速:6 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是6-停車 車速太快!先減速再停車……
狀態:行進; 車速:6 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是3-減速 狀態:行進; 車速:5 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是3-減速 狀態:行進; 車速:4 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
選中的操作是6-停車 狀態:泊車; 車速:0 / 90 當前乘員:2 / 3
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
狀態:泊車; 車速:0 / 90 當前乘員:2 / 3
process returned 0 (0x0) execution time : 73.297 s
press any key to continue.
**:
#include #include#include using namespace std;
enum vehiclestaus ; //車輛狀態:泊車、行進
class vehicle //車輛類
//建構函式,初始時,當前速度總為0且處在停車狀態
void start()
else cout<
}//由rest狀態到running, 初速為1
void stop()
else cout<
}//由running狀態到rest, 當前速度小於5時,才允許停車
void speed_up()
//加速,呼叫1次,速度加1
void slow_down()
//減速,呼叫1次,速度減1,速度為0時,停車
};class bicycle :virtual public vehicle//(1)自行車類的虛基類為車輛類
//定義建構函式
};class motorcar : virtual public vehicle//(2)機動車類的虛基類也為車輛類
//定義建構函式
void addpassenger(int p=1)
return 0;
}
執行結果: 第12周專案2 電單車繼承自行車和機動車
問題及 檔名稱 test.cpp 作 者 李盈盈 完成日期 2015年 05 月 24 日 版 本 號 v1.0 問題描述 在下面一段類的定義中,自行車類的虛基類為車輛類,機動車類的虛基類也為車輛類,電單車類的基類為自行車類和機動車類,類之間均為公有繼承。輸入描述 無 程式輸出 按要求輸出 incl...
第12周 專案2 電單車繼承自行車和機動車
問題及 all right reserved,檔名 test.cpp 完成日期 2015年5月31日 版本號 v1.0 問題描述 在下面一段類的定義中,自行車類的虛基類為車輛類,機動車類的虛基類也為車輛類,電單車類的基類為自行車類和機動車類,類之間均為公有繼承,如圖所示。1 根據上面各類間關係的描述...
第10 11周專案5 電單車繼承自行車和機動車
檔名稱 第10 11周專案5 電單車繼承自行車和機動車 完成日期 2016.5.28 版本號 v1.0 問題描述 1 根據上面各類間關係的描述,補全下面程式段中空缺的 2 實現程式中宣告的成員函式,注意相應操作中的動作發生的條件不能滿足時應給出提示。4 在報告中,請用自己的話寫清楚使用虛基類解決什麼...