《C++面向?qū)ο蟪绦蛟O(shè)計(jì)答案》-第五章--譚浩強(qiáng)-清華大學(xué)出版社_第1頁
《C++面向?qū)ο蟪绦蛟O(shè)計(jì)答案》-第五章--譚浩強(qiáng)-清華大學(xué)出版社_第2頁
《C++面向?qū)ο蟪绦蛟O(shè)計(jì)答案》-第五章--譚浩強(qiáng)-清華大學(xué)出版社_第3頁
《C++面向?qū)ο蟪绦蛟O(shè)計(jì)答案》-第五章--譚浩強(qiáng)-清華大學(xué)出版社_第4頁
《C++面向?qū)ο蟪绦蛟O(shè)計(jì)答案》-第五章--譚浩強(qiáng)-清華大學(xué)出版社_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1:#include using namespace std;class Studentpublic: void get_value() cinnumnamesex; void display( ) coutnum: numendl; coutname: nameendl; coutsex: sexageaddr; void display_1() coutage: ageendl; /引用派生類的私有成員,正確。 coutaddress: addrendl; /引用派生類的私有成員,正確。 private: int age; char addr30; ; int main() Student

2、1 stud1; stud1.get_value_1(); stud1.display(); stud1.display_1(); return 0;2:#include using namespace std;class Studentpublic: void get_value() cinnumnamesex; void display( ) coutnum: numendl; coutname: nameendl; coutsex: sexageaddr; void display_1() display(); coutage: ageendl; /引用派生類的私有成員,正確。 cout

3、address: addrendl; /引用派生類的私有成員,正確。 private: int age; char addr30; ; int main() Student1 stud1; stud1.get_value_1(); stud1.display_1(); return 0;3:#include using namespace std;class Student /聲明基類public: /基類公用成員 void get_value(); void display( ); protected : /基類保護(hù)成員 int num; char name10; char sex;void

4、 Student:get_value() cinnumnamesex;void Student:display( ) coutnum: numendl; coutname: nameendl; coutsex: sexageaddr; void Student1:display1( ) coutnum: numendl; /引用基類的保護(hù)成員 coutname: nameendl; /引用基類的保護(hù)成員 coutsex: sexendl; /引用基類的保護(hù)成員 coutage: ageendl; /引用派生類的私有成員 coutaddress: addrendl; /引用派生類的私有成員 in

5、t main( ) Student1 stud1; /stud1是派生類student1類的對(duì)象 stud1.get_value_1(); /調(diào)用派生類對(duì)象stud1的公用成員函數(shù) stud1.display1( ); /調(diào)用派生類對(duì)象stud1的公用成員函數(shù) return 0; 4: 解法一#include using namespace std;class Student /聲明基類public: /基類公用成員 void get_value(); void display( ); protected : /基類保護(hù)成員 int num; char name10; char sex;voi

6、d Student:get_value() cinnumnamesex;void Student:display( ) coutnum: numendl; coutname: nameendl; coutsex: sexageaddr; void Student1:display1( ) coutnum: numendl; /引用基類的保護(hù)成員,合法 coutname: nameendl; /引用基類的保護(hù)成員,合法 coutsex: sexendl; /引用基類的保護(hù)成員,合法 coutage: ageendl; /引用派生類的私有成員,合法 coutaddress: addrendl; /

7、引用派生類的私有成員,合法 int main( ) Student1 stud1; /stud1是派生類student1類的對(duì)象 stud1.get_value_1(); /調(diào)用派生類對(duì)象stud1的公用成員函數(shù)get_value_1 stud1.display1( ); /調(diào)用派生類對(duì)象stud1的公用成員函數(shù)display1 return 0; 解法二#include using namespace std;class Student /聲明基類public: /基類公用成員 void get_value(); void display( ); protected : /基類保護(hù)成員 in

8、t num; char name10; char sex;void Student:get_value() cinnumnamesex;void Student:display( ) coutnum: numendl; coutname:nameendl; coutsex:sexageaddr; void Student1:display1( ) coutage:ageendl; coutaddress:addrendl; int main( ) Student1 stud1; /stud1是派生類student1類的對(duì)象 stud1.get_value(); stud1.get_value_

9、1(); stud1.display( ); stud1.display1(); /合法。display1是派生類中的公用成員函數(shù) return 0; 5:class A /A為基類public: void f1( ); int i; protected: void f2(); int j; private: int k;class B: public A /B為A的公用派生類public: void f3( ); protected: int m; private: int n;class C: public B /C為B的公用派生類public: void f4(); private: i

10、nt p;int main()A a1; /a1是基類A的對(duì)象 B b1; /b1是派生類B的對(duì)象 C c1; /c1是派生類C的對(duì)象 return 0;6:#include using namespace std;class Apublic: void f1( ); protected: void f2(); private: int i;class B: public Apublic: void f3( ); int k; private: int m;class C: protected Bpublic: void f4(); protected: int n; private: int

11、 p;class D: private Cpublic: void f5(); protected: int q; private: int r;int main()A a1; B b1; C c1; D d1; return 0;7:#include using namespace std;class A public: A()a=0;b=0; A(int i)a=i;b=0; A(int i,int j)a=i;b=j; void display()couta=a b=b; private: int a; int b; ;class B : public A public: B()c=0;

12、 B(int i):A(i)c=0; B(int i,int j):A(i,j)c=0; B(int i,int j,int k):A(i,j)c=k; void display1() display(); cout c=cendl; private: int c;int main() B b1; B b2(1); B b3(1,3); B b4(1,3,5); b1.display1(); b2.display1(); b3.display1(); b4.display1();return 0;8:#include using namespace std;class A public: A(

13、)coutconstructing A endl; A()coutdestructing A endl; ;class B : public A public: B()coutconstructing B endl; B()coutdestructing B endl;class C : public B public: C()coutconstructing C endl; C()coutdestructing C endl;int main() C c1; return 0;9:#include#include using namespace std;class Teacher publi

14、c: Teacher(string nam,int a,char s,string tit,string ad,string t); void display(); protected: string name; int age; char sex; string title; string addr; string tel;Teacher:Teacher(string nam,int a,char s,string tit,string ad,string t): name(nam),age(a),sex(s),title(tit),addr(ad),tel(t) void Teacher:

15、display() coutname:nameendl; coutageageendl; coutsex:sexendl; couttitle:titleendl; coutaddress:addrendl; couttel:telendl; class Cadre public: Cadre(string nam,int a,char s,string p,string ad,string t); void display(); protected: string name; int age; char sex; string post; string addr; string tel; ;

16、 Cadre:Cadre(string nam,int a,char s,string p,string ad,string t): name(nam),age(a),sex(s),post(p),addr(ad),tel(t) void Cadre:display() coutname:nameendl; coutage:ageendl; coutsex:sexendl; coutpost:postendl; coutaddress:addrendl; couttel:telendl; class Teacher_Cadre:public Teacher,public Cadre publi

17、c: Teacher_Cadre(string nam,int a,char s,string tit,string p,string ad,string t,float w); void show( ); private: float wage; ; Teacher_Cadre:Teacher_Cadre(string nam,int a,char s,string t,string p,string ad,string tel,float w): Teacher(nam,a,s,t,ad,tel),Cadre(nam,a,s,p,ad,tel),wage(w) void Teacher_C

18、adre:show( ) Teacher:display(); coutpost:Cadre:postendl; coutwages:wageendl; int main( ) Teacher_Cadre te_ca(Wang-li,50,f,prof.,president,135 Beijing Road,Shanghai,(021)61234567,1534.5); te_ca.show( ); return 0;10:#include #include using namespace std;class Teacher /教師類 public: Teacher(int,char ,cha

19、r); /聲明構(gòu)造函數(shù) void display(); /聲明輸出函數(shù) private: int num; char name20; char sex; ;Teacher:Teacher(int n,char nam,char s) /定義構(gòu)造函數(shù) num=n; strcpy(name,nam); sex=s;void Teacher:display() /定義輸出函數(shù) coutnum:numendl; coutname:nameendl; coutsex:sexendl;class BirthDate /生日類 public: BirthDate(int,int,int); /聲明構(gòu)造函數(shù)

20、void display(); /聲明輸出函數(shù) void change(int,int,int); /聲明修改函數(shù) private: int year; int month; int day;BirthDate:BirthDate(int y,int m,int d) /定義構(gòu)造函數(shù) year=y; month=m; day=d; void BirthDate:display() /定義輸出函數(shù) coutbirthday:month/day/yearendl;void BirthDate:change(int y,int m,int d) /定義修改函數(shù) year=y; month=m; day=d; class Professor:public Teacher /教授類 public: Professor(int,char ,char,int,int,int,fl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論