源程式:
/*(檔案注釋頭部開始)
*程式的版權和版本宣告部分
*檔名稱:電單車類
*作 者:2011級計114-3劉楊
*完成日期:2023年5月9號
*版本號:vc
* 對任務及求解方法的描述部分
* 輸入描術:
* 問題描述:在下面一段類的定義中,自行車類的虛基類為車輛類,機動車類的虛基類也為車輛類,電單車類的基類為自行車類和
機動車類,類之間均為公有繼承。
(1)根據上面各類間關係的描述,補全下面程式段中空缺的**
(2)實現程式中宣告的成員函式,注意相應操作中的動作發生的條件不能滿足時應給出提示。
(3)執行程式,享受開摩托的過程。(bb平台上提供了乙個可執行檔案,可以先執行再程式設計。不必申請駕照,這個電單車很安全。)
(4)在報告中回答問題:本題中使用虛基類的好處是什麼?
* 程式輸出:輸出電單車的執行狀態,速度,和乘客人員
* 程式頭部的注釋結束
*/
#include #include#include using namespace std;
enum vehiclestaus ; //車輛狀態:泊車、行進
class vehicle //車輛類
;class bicycle :virtual public vehicle//(1)自行車類的虛基類為車輛類
;class motorcar : virtual public vehicle//(2)機動車類的虛基類也為車輛類
;class motorcycle: public bicycle,public motorcar//(3)電單車類的基類為自行車類和機動車類
;//車輛類建構函式,初始時,當前速度總為0且處在停車狀態
vehicle::vehicle(int maxs, int w)
//由rest狀態到running, 初速為1
void vehicle::start()
//由running狀態到rest, 當前速度小於5時,才允許停車
void vehicle::stop()
else
}}//加速,呼叫1次,速度加1
void vehicle::speed_up()
//減速,呼叫1次,速度減1,速度為0時,停車
void vehicle::slow_down()
//定義自行車類建構函式
bicycle::bicycle(int maxs, int w, int h):vehicle(maxs, w),height(h){}
//定義機動車類建構函式
motorcar::motorcar(int maxs, int w, int s, int p):vehicle(maxs, w),seatnum(s),passengernum(p){}
//搭載乘客,超員要拒載,有人下車時,p為負數。當然車上乘客至少有1個(司機)。上下車時要保證安全……
void motorcar::addpassenger(int p )
//定義電單車類建構函式
motorcycle::motorcycle(int maxs, int w, int s, int p, int h):vehicle(maxs, w),bicycle(maxs, w, h),motorcar(maxs, w, s, p){}
//顯示電單車的執行狀態
void motorcycle::show()
if(rest) }
int main( )
m.show();
cout<}
system("pause");
return 0;
}
實驗結果:
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
操作(啟動) 狀態:行進 車速:1/90 當前成員:1/4
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
操作(加速) 狀態:行進 車速:2/90 當前成員:1/4
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
操作(減速) 狀態:行進 車速:1/90 當前成員:1/4
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
操作(有人上車) 電單車在行駛中,不能上下車狀態:行進 車速:1/90 當前成員:
1/4請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
操作(停車) 狀態:行進 車速:0/90 當前成員:1/4
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
操作(有人上車) 狀態:行進 車速:0/90 當前成員:2/4
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
操作(有人下車) 狀態:行進 車速:0/90 當前成員:1/4
請操作:1-啟動 2-加速 3-減速 4-有人上車 5-有人下車 6-停車 0-結束
狀態:行進 車速:0/90 當前成員:1/4
請按任意鍵繼續. . .
第十二周 任務三
程式頭部注釋開始 程式的版權和版本宣告部分 檔名稱 練習使用虛基類 作 者 薛廣晨 完成日期 2012 年 4 月 27 日 版 本 號 x1.0 對任務及求解方法的描述部分 輸入描述 練習使用虛基類 問題描述 任務3 在下面一段類的定義中,自行車類的虛基類為車輛類,機動車類的虛基類也為車輛類,電單...
第十二周任務(三)
程式頭部注釋開始 程式的版權和版本宣告部分 檔名稱 實現程式中宣告的成員函式,注意相應操作中的動作發生的條件不能滿足時應給出提示。作 者 齊豔紅 完成日期 2011年 5月 8日 版 本 號 對任務及求解方法的描述部分 根據上面各類間關係的描述,補全下面程式段中空缺的 問題描述 執行程式,享受開摩托...
第十二周 任務三
include include include includeusing namespace std enum vehiclestaus 車輛狀態 泊車 行進 class vehicle 車輛類 int get currentspeed int get weight int get status v...