C 實驗 繼承與派生

2021-10-23 21:26:34 字數 3089 閱讀 9631

1. 實驗目的

(1) 了解繼承在物件導向程式設計中的重要作用。

(2) 進一步掌握繼承與派生的概念。

(3) 掌握通過繼承派生出乙個新的類的方法。

(4) 了解虛基類的作用與方法。

2. 實驗內容

(1) 將程式片段用公用繼承的方式補充和改寫完整;

(2) 將程式片段用保護繼承的方式補充和改寫完整;

(3) 比較兩種繼承方式,考慮二者在什麼情況下不能替代;

(4) 使用多重繼承方式派生出新類。

3.源**

#include

"pch.h"

#include

using

namespace std;

class

student

void

display()

private

:int num;

char name[10]

;char ***;};

class

student1

:public student

void

display_1()

private

:int age;

char addr[30]

;};int

main()

#include

"pch.h"

#include

using

namespace std;

class

student

;void student::

get_value()

void student::

display()

class

student1

:protected student

;void student1::

get_value_1()

void student1::

display1()

intmain()

#include

"pch.h"

#include

using

namespace std;

class

student

;void student::

get_value()

void student::

display()

class

student1

:public student

;void student1::

get_value_1()

void student1::

display1()

intmain()

#include

"pch.h"

#include

#include

using

namespace std;

class

teacher

;teacher::

teacher

(string nam,

int a,

char s, string tit,string ad,string t)

:name

(nam)

,age

(a),

***(s)

,title

(tit)

,addr

(ad)

,tel

(t)void teacher::

display()

class

cadre

;cadre::

cadre

(string nam,

int a,

char s,string p,string ad,string t)

:name

(nam)

,age

(a),

***(s)

,post

(p),

addr

(ad)

,tel

(t)void cadre::

display()

class

person

:public teacher,

public cadre

;person::

person

(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, t, ad, tel)

,wage

(w)void person::

show()

intmain()

4.執行結果

5.實驗總結

1.公用繼承是指在定義乙個派生類時將基類的繼承方式指定為public的;

2.保護繼承是指在定義乙個派生類時將基類的繼承方式指定為protected的;

3.公用繼承和保護繼承的執行過程相同的時候,其執行結果也相同;

4.不同的繼承方式使派生類的成員具有不同的特性,會對程式的執行產生不同的影響。

實驗五 繼承與派生

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

實驗五 繼承與派生

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

實驗五 繼承與派生

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 ...