6w5 第六周程式填空題2

2022-03-05 01:43:20 字數 638 閱讀 3330

描述

下面程式的輸出結果是:

destructor b

destructor a

請完整寫出 class a。 限制條件:不得為 class a 編寫建構函式。

#include using namespace std;

class a ;

class b:public a

};int main()

輸入無輸出destructor b

destructor a樣例輸入

樣例輸出

destructor b

destructor a

code:

#include using namespace std;

class a

};class b:public a

};int main()

analysis:

剛開始想的是加一a的析構函式,但是執行的時候只能夠執行a的析構函式,不能執行b的析構函式。但是當把a的析構函式變成虛的析構函式時,就能夠正確輸出了。根據多型的機制來分析:

pa是指向基類a物件的指標,當pa指向基類a的派生類b時,此時就滿足了多型的條件。析構時先執行b的析構函式在執行a的析構函式。

6w6 第六周程式填空題3

描述 下面的程式輸出結果是 a fun a do a fun c do 請填空 include using namespace std class a virtual void do class b public a class c public b void fun void call 在此處補充...

6w4 第六周程式填空題1

描述 下面程式的輸出結果是 a fun c do 請填空 include using namespace std class a void do class b public a class c public b void do class b public a class c public b p...

6w4 第六周程式填空題1(虛函式與派生)

總時間限制 1000ms 記憶體限制 65536kb 描述 下面程式的輸出結果是 a fun c do 請填空 include using namespace std class a void do class b public a class c public b int main 輸入無 輸出a...