資源描述:
《繼承與派生類設計》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、姓名:專業(yè):科目:實驗題目:繼承與派生類設計班級:實驗日期:學號:【實驗目的】1.學習聲明和使用類的繼承關系,聲明派生類;2.熟悉不同繼承方式下對基類成員的訪問控制;3.區(qū)別繼承與組合的設計方式。【實驗內容】1、設計一個簡單的人事信息管理系統(tǒng)?;久枋觯涸O計People(人員)類。該類型人員都具有的屬性:number(編號)、sex(性別ame(姓名);從People(人員)類派生HjStudent(學生)類,添加屬性:classNO(班級);從People類派生出Teacher(教師)類,添加屬性:title(職稱)。從Student類屮派生出Graduate(研究生)類,添加屬性:
2、subject(專業(yè))、adviser(導師是教師類Teacher的對象成員);要求:每個類中都應有構造函數(shù)和信息顯示的成員函數(shù)。編程實現(xiàn)簡單的功能。1、源程序#includeusingnamespacestd;classPeople{protected:intnumber;stringsex,name;public:People(intn=0,strings=nnoSex,stringna=nnoNamen);voiddisplayO;};classStudent:publicPeople}protected:stringclassNO;public:Student
3、(intn=0,strings二"noSex”,stringna=MnoName'^stringc=nnoclassNOH);voiddisplayO;};classTeacher:publicPeople}protected:stringtitle;public:Teacher(intn=(),strings=”noSex役stringna=,,noName,stringt=unoTeacherH);voiddisplayO;};classGraduate:publicStudent}protected:stringsubject;public:Teacheradviser;Gradu
4、ate(intn=O,strings=HnoSex,stringna=HnoNanie,stringa=nnoAdviserM,intn1=0,stringsi=”noSex”,stringnal=nnoNamen,stringtl=HnoTitleHvoiddisplayO;);People::People(intn,strings,stringna){number=n;sex=s;name=na;}voidPeople::display(){cout?n編號:n?number?endl;cout?°性別:M?sex?endl;cout?n姓名:H?name?endl;}Studen
5、t::Student(intn,strings,stringna,stringc){number=n;sex=s;name=na;classNO=c;)voidStudent::display(){People::display();cout?H班級:"?classNO?endl;)Teacher::Teacher(intn,strings,stringna,stringt){number=n;sex=s;name=na;title=t;)voidTeacher::display(){People::display();cout?n職稱:,'?tille?endl;)Graduate::G
6、raduate(intn,strings,stringna,stringc,stringsujntn1,stringtl):adviser(nl,sl,nal,tl){number=n;sex=s;name=na;classNO=c;subject=su;}su=,,nosubject,stringshstringnahstringvoidGraduate::display(){Student::display();cout?H專業(yè):M?subject?endl;}voidmain(){Peoplea(07,”男”,”張李七“);Studentb(07,”男”,”張李七“,“201011
7、81”);Teacherc(02,M男”,”王龍T教授”);Graduated(04,”男”,”李亮“,“20101181“,”軟件工程”,01,”女“,”如花丁教授”);cout?"學生信息:H?endl;b.displayO;cout?H老師信息:"?endl;c.displayO;cout?"研究生信息:'*?endl;d.displayO;cout?H導師信息:u?endl;d.adviser.display()