實驗五 繼承與派生

2021-08-19 19:03:58 字數 1699 閱讀 6929

1.掌握派生類的定義方法的和派生類建構函式定義方法。

2.掌握在不同繼承方式的情況下,基類成員在派生類中的訪問許可權。

3.掌握在多繼承方式的情況下,建構函式與析構函式的呼叫時機與順序。

1.除錯下列程式,並在對程式進行修改後再除錯,指出除錯中出錯原因。

程式如下:

#include

using

namespace std; 

class a   

public:    

void seta(int i)    

int geta() 

private:   

int a;    

class b:public a  

public:    

void setb(int i)  

int getb()    

void show();

int main()    

int geta()

private:

int a;

};

class b:public a

int getb()

void show();

int main()

;  class base2  

;  class derived1:public base2,virtual

public base1  

;  class derived2:public base2,virtual

public base1  

;  class derived3:public derived1,virtual

public derived2  

;  int main()  

return 0;  

#include

using namespace std;

class base1

;class base2

;class derived1:public base2,virtual public base1

;class derived2:public base2,virtual public base1

;class derived3:public derived1,virtual public derived2

;int main()

輸出結果如下:

3.利用繼承性與派生類來管理學生和教師的檔案。假設要管理下述幾類人員的如下一些資料。

teacher(教師)類:姓名、性別、年齡、學號、系別;

gradstudent(研究生)類:姓名、性別、年齡、學號、系別、導師;

要求每個類只設立建構函式以及顯示類物件資料的成員函式。編寫主函式,說明有關類物件,並對其類成員函式進行簡單使用。(sy5_3.cpp)

編寫程式如下:

程式輸出結果如下:

4.試寫出所能想到的所有形狀(包括二維的和三維的),生成乙個形狀層次類結構。生成的層次結構一shape作為基類,並由此派生出twodimshape類和threedimshape類。它們的派生類是不同形狀類,定義層次結構中的每乙個類,並用函式main()進行測試。(sy5_4.cpp)

實驗五 繼承與派生

1.掌握派生類的定義方法的和派生類建構函式定義方法。2.掌握在不同繼承方式的情況下,基類成員在派生類中的訪問許可權。3.掌握在多繼承方式的情況下,建構函式與析構函式的呼叫時機與順序。1.除錯下列程式,並在對程式進行修改後再除錯,指出除錯中出錯原因。sy5 1.cpp includeusing nam...

實驗五 繼承與派生

sy5 1.cpp includeusing namespace std class a int geta public int a class b public a int getb void show void print cout j if j 1 goto loop else return ...

實驗5 繼承與派生

sy5 1.cpp include using namespace std class a intgeta public int a class b public a intgetb void show public int b int main a,公有成員函式seta 和geta 作為派生類b的...