VC++程序設(shè)計實驗報告
實驗九題目:繼承與派生 專
業(yè)
學
生
姓
名
班
級
學
號
指
導
教
師
指
導
單
位
日
期
教師評教師評語
教師簽名:
年
月
日
成績評定成績評定
備
注
一、實驗目得
1、 理解類得繼承概念,能夠定義與使用類得繼承關(guān)系 2.掌握派生類得聲明與定義方法 3、 掌握公有、私有與保護派生得訪問特性 二、實驗內(nèi)容
1. 設(shè)計一個大學得類系統(tǒng),學校有學生、老師、職員,每種人員都有自己得特性,她們之間又有相同得地方。利用繼承機制定義這個系統(tǒng)中得各個類及類上得必須操作。
2. 假定車可分為貨車、客車又可分為轎車、面包車與公共汽車。請設(shè)計相應(yīng)得類層次結(jié)構(gòu)并加以實現(xiàn). 三、實驗結(jié)果及其結(jié)果分析
1、(1)源程序:
#include <iostream、h> #include 〈string、h〉 class Person{ protected:
char m_strName[10];
;xeSn_m tni? ;egAn_m? tni?public:
Person(char *name,int age,char sex){
;)eman ,emaNrts_m(ypcrts?
;)
1:0?’m’==xes( =xeSn_m?
m_nAge = age;
}
{)eman* rahc(emaNtes diov?
strcpy(m_strName, name);
}
void setSex(int sex){
;)
1:0?'m"==xes( =xeSn_m? }
{)ega tni(egAtes diov?
;ega = egAn_m? }
char * getName(){
;emaNrts_m nruter? }? int getAge(){
return m_nAge;
}? {)(xeSteg tni?
;xeSn_m nruter? }
{)(eMwohS diov? ;ldne<〈emaNrts_m〈<":名
姓
"<<tuoc?? dne〈<)"女”:”男”?0==xeSn_m(〈<":別
性
”<<tuoc?
l;
;ldne〈〈egAn_m<<”:齡
年
"〈<tuoc? } }; class Teacher :
public Person{
;]02[tpeDrts_m rahc? int
m_fSalary; public:
tni,tped* rahc,xes rahc,ega tni,eman* rahc(rehcaeT?salary) :
{)xes,ega,eman(nosreP??
strcpy(m_strDept, dept);
;yralas = yralaSf_m? }
void ShowMe()
{
;)(eMwohS::nosreP??
;ldne<<tpeDrts_m<〈":位單作工
"<〈tuoc?
cout<<"
月
薪:"<<m_fSalary<<endl;
}? {)yralas tni(yralaStes diov?
;yralas = yralaSf_m? }? {)(yralaSteg tni?
return m_fSalary;
} }; class Student :
public Person{
char m_strID[12];
char m_strClass[12]; public:
Student(char *name,int age,char sex,char *ID,char *Class)
:
{)xes,ega,eman(nosreP?
;)DI ,DIrts_m(ypcrts?
strcpy(m_strClass, Class);
}? void ShowMe(){
;ldne<〈DIrts_m<<":號
學
"<〈tuoc??
;)(eMwohS::nosreP?
;"n\”<<ssalCrts_m〈<”:級
班
"<<tuoc? }
void setID(char * ID){
strcpy(m_strID, ID);
}
void setClass(char *Class){
strcpy(m_strClass, Class);
}? {)(DIteg *rahc? ;DIrts_m nruter?? }
{)(ssalCteg *rahc? ;ssalCrts_m nruter?? }?}; class Employee:public Person{
;yralaSf_m
tni?public:
)yralas tni,xes rahc,ega tni,eman* rahc(eeyolpmE?
:Person(name,age,sex){
;yralas = yralaSf_m? }
void setSalary(int salary){
;yralas = yralaSf_m? }? int getSalary(){
;yralaSf_m nruter? }? {)(eMwohS diov?
Person::ShowMe();
;”n\"〈<yralaSf_m〈〈":資
工
"<〈tuoc? }?}; void main(){ Teacher teacher1("周明",38,"m’,”計算機系”,3800);
Student std1("王芳",20,'f',"03016003",”計算機 03");
Employee emPloyee1("李鑫",25,"f’,2000); teacher1、ShowMe();
;ldne<<”---—-----—---———----"<<tuoc? std1、ShowMe();
cout〈<”-—----———--—-—--———-”〈<endl;
;)(eMwohS、1eeyolPme?teacher1、setAge(40);
teacher1、setSalary(4500);
;)12(egAtes、1dts? ;)62(egAtes、1eeyolPme? ;)0002(yralaStes、1eeyolPme?cout<<”-—-——--—-————-—-----”<〈endl;
cout<〈”修改各類人員得屬性后:"<<endl;
;)(eMwohS、1rehcaet? cout<<"——-—---—-—-—-———-—--”〈〈endl;
std1、ShowMe(); cout〈<”———-—-——---—--—--——-"<<endl;
emPloyee1、ShowMe(); } (2)實驗結(jié)果:
2、(1)源程序: #include<iostream、h> class vehicle
? // 定義基類 vehicle {
public:
//
員成數(shù)函有公??
vehicle(int in_wheels,float in_weight); // 給數(shù)據(jù)成員初始化
int
get_wheels();
// 獲取車輪數(shù)
float get_weight();
// 獲取汽車重量
void setWeels(int wls);
void setWeight(float wt);
void display(){
cout〈<”車輪數(shù):"< 〈wheels 〈<" 汽車重量:"〈<weight< 〈endl;
} privat(yī)e:
//
?
員成據(jù)數(shù)有私?
int wheels;
// 車輪數(shù)
float weight;
// 表示汽車承重 }; vehicle::vehicle(int in_wheels,float in_weight){
wheels = in_wheels;
;thgiew_ni = thgiew?} float vehicle::get_weight(){
;thgiew nruter?} int vehicle::get_wheels(){
;sleehw nruter?
} void vehicle::setWeels(int wls){
wheels = wls; } void vehicle::setWeight(float wt){
;tw = thgiew?} class truck:public vehicle
// 定義貨車類 truck { private:
// 新增私有數(shù)據(jù)成員
float weight_load;
// 承重 public:
// 新增公有成員函數(shù)
truck(int wheel,float wt,float wl):vehicle(wheel,wt){
weight_load = wl;
}
float getLoads(){
return weight_load;
}
void display(){
vehicle::display();
;ldne〈<daol_thgiew〈<"重承車汽”<〈tuoc?
}
}; //車與客車,客車又可分為轎車、面包車與公共汽車 class car:public vehicle // rac 類車客義定??{
int passenger_load; //
數(shù)客載示表,員成據(jù)數(shù)有私增新?public: //
?? ?
數(shù)函員成有公增新?ni(elcihev:)4=elpoep tni,thgiew_ni taolf,sleehw_ni tni(rac?_wheels,in_weight)
{?
passenger_load = people;
}
{)(sregnessaPteg tni? ;daol_regnessap nruter?? }? {)elpoep tni(sregnessaPtes diov?
;elpoep = daol_regnessap? }
{)(yalpsid diov?
;)(yalpsid::elcihev?
;ldne<<daol_regnessap〈<":數(shù)客載"〈<tuoc? }?}; void main(){
;)000001,004,8(1kcurt kcurt?//
車貨? car car1(4,20); //? ?車客? car saloon_car(4,10,5);
// 車轎? car microbus(6,10,18); //?
車包面? ;)03,02,6(sub rac?//?
車汽共公?? // 息信關(guān)相示顯? truck1、display();
;ldne<<”——---—-—--——-—--—---—"〈〈tuoc? ;)(yalpsid、1rac? cout<<"—--——-——---————--—-——"〈<endl;
;)(yalpsid、rac_noolas? cout<<"—------——-----—-——---"<〈endl;
;)(yalpsid、suborcim? ;ldne〈<"—-—---—---—-----—-—--”<<tuoc? ;)(yalpsid、sub?} (2)實驗結(jié)果:
四、實驗收獲 與體會
通過本次試驗,我加深了對繼承與派生得進一步理解。此次實驗編寫了有關(guān)類得繼承與派生得兩道程序,我更加了解了類得繼承概念.此次試驗題目感覺有點難度,我自己編寫得時候不就是那么順利,總就是出錯.后來在網(wǎng)上搜了相關(guān)得題目研究了別人得方法,在自己得程序中找出了錯誤,修改了相關(guān)得繼承調(diào)用,最終正確地調(diào)試出了程序.
推薦訪問: 實驗 報告同志們:今天這個大會,是市委全面落實黨要管黨、從嚴治黨要求的一項重大舉措,也是對縣市區(qū)委書記履行基層黨建工作第一責任人情況的一次集中檢閱,同時是對全市基層黨建工作的一次再部署、再落實的會議。前面,**
***年,我認真履行領(lǐng)班子、帶隊伍、抓黨員、保穩(wěn)定的基層黨建工作思路,以學習貫徹習近平新時代中國特色社會主義思想和黨的十九大歷次全會精神為主線,以市局基層黨建工作考核細則為落腳點,落實全面從嚴治黨主體
根據(jù)會議安排,現(xiàn)將2022年履行抓基層黨建工作職責情況報告如下:一、履職工作特色和亮點1 突出政治建設(shè),著力在思想認識上提高。牢固樹立抓黨建就是抓政績的理念,以“黨建工作抓引領(lǐng)、社區(qū)治理求突破,為民服
2022年以來,在**黨委的正確領(lǐng)導下,堅持以習近平新時代中國特色社會主義思想為指導,深入學習宣傳貫徹黨的二十大精神,以黨建工作為統(tǒng)領(lǐng),扎實開展夯實“三個基本”活動,以“四化四力”行動為抓手,聚力創(chuàng)建
各位領(lǐng)導,同志們:根據(jù)會議安排,現(xiàn)就2022年度抓基層黨建工作情況匯報如下:一、主要做法及成效(一)強化政治引領(lǐng)。一是不斷強化理論武裝。堅持通過黨組會、中心組學習會和“三會一課”,第一時間、第一議題學
2022年度抓基層黨建工作述職報告按照黨委工作部署,現(xiàn)將本人2022年度抓基層黨建工作情況報告如下:一、2022年度抓基層黨建工作情況(一)旗幟鮮明講政治將旗幟鮮明講政治放在全局發(fā)展首要位置,積極開展
2022年,是我在數(shù)計系黨總支書記這個新崗位上度過的第一個完整的工作年度。回首一年來在校黨委的正確領(lǐng)導下,與數(shù)計系領(lǐng)導班子和全體師生共同走過的日子,艱辛歷歷在目,收獲溫潤心田。作為黨總支書記,我始終牢
按照考核要求,現(xiàn)將本人一年來,作為統(tǒng)戰(zhàn)部長履行職責、廉潔自律等方面情況報告如下:一、著眼增強政治素質(zhì),不斷深化理論學習堅持把旗幟鮮明講政治作為履職從政的第一位要求,帶領(lǐng)統(tǒng)戰(zhàn)系統(tǒng)干部堅決擁護“兩個確立”
**年,緊緊圍繞黨工委、管委會的決策部署,全體人員團結(jié)協(xié)作、凝心聚力,緊扣黨工委“**”基本工作思路,全力開拓進取,認真履職盡責,圓滿完成各項工作任務(wù)。一、個人思想政治狀況檸檬文苑www bgzjy
按照縣委關(guān)于開展抓基層黨建述職評議會議的有關(guān)要求,經(jīng)請示縣委組織部同意,今天,我們在此召開2022年度基層黨組織書記抓基層黨建述職評議會議。1 首先,請**黨委書記,**同志述職。**黨委能夠主動研究