下面程式的執行結果是什麼?為什麼

時間 2022-02-01 20:40:33

1樓:歲月哪曾斑駁

1.c子類重新實現了虛擬函式

2.bc' constructor

dc' constructor

dc' destructor

bc' destructor

繼承類構造順序為先父類後子類,而析構順序則相反3.會發生編譯錯誤(你確定沒寫錯?)

函式沒有實現宣告,即使宣告仍然會有warning(最好把原先陣列宣告為const char* pn,相應的函式引數型別也要改變)

4.d::func() called

子類重新實現了虛擬函式

2樓:匿名使用者

第一題輸出 c

因為建立c型別的物件呼叫其父類的函式g g中呼叫f 類中函式引數預設始終有一個this指標,這個呼叫的this指向的就是d物件 呼叫g,g中呼叫f產生this->f() 呼叫c中的f。

第二題輸出

bc' constructor

dc' constructor

dc' destructor

bc' destructor

建立子類物件首先建立基類物件呼叫基類建構函式,然後呼叫自己的建構函式,釋放時先析構自己物件最後析構父類物件,有父才有子。

第三題輸出

fred

barney

wilma

betty

這個是二級指標,我一時半會找不到合適的語言描述,你可以看看關於二級指標的資料

第四題輸出 d::func() called

c++的多型特性 子類指標pd傳入全函式,而函式引數是基類指標,一個指向子類物件的基類指標呼叫,就會產生多型(前提有虛擬函式過載)

希望對你有幫助........

下面程式的執行結果是。

下面程式的輸出結果是什麼?

3樓:溼潤的風

當i=0時,ch[i]='1',符合迴圈條件,進入迴圈體;

此時,s=0;

s=0+ch[0]-'0'='1'-'0'=1然後是i+=2,即i=2.

而ch[2]='a',不符合迴圈條件,所

版以退出迴圈體,執權行輸出語句

printf("%d\n",s),

即顯示整數「1」後結束程式

下面程式的執行結果是什麼 public class example

4樓:笑喘是病得抽

package pkg1;

public class example1 implements runnable

public void run()

}public static void main(string args)

}執行結果全是1h

所以答案為b

下面程式的執行結果是什麼?為什麼

南睿薇 二10 20 d類是從b類和c類派生的,而b類和c類又都是從類派生的,但各有自己的副本。所以對於物件d,d.b n與d.c n是兩個不同的資料成員,互無聯絡。所以程式結果為 10,20三35 4523b d 3,5 呼叫建構函式b int,int a int 得到x 3 y 5 d.disp...

下面程式輸出結果是,下面程式輸出結果是什麼?

韋榮軒喜昱 當a 14時執行do while迴圈 由於開始時對a賦值10,所以輸出a 10,y 0 堵丹彤牟萱 輸出為 a 16 y 60,分析如下 main while a 14 這裡的迴圈條件不是判斷是否滿足a等於14,而是一個賦值語句,每次執行到這裡都會將14賦值給a,因此這裡的迴圈條件始終都...

這個程式執行結果是什麼,為什麼?

結果是3,這個程式就是測試字串長度的。先定義了一個字元型陣列,系統預設在串尾新增 0 再把它賦給一個字元型指標p,通過移動指標所指的位置來判斷是否到字串結尾。而s始終都是指向陣列頭的,不能夠改變。指標本身儲存的是所指內容儲存的地址,在計算機中陣列的儲存是連續的,即它們的地址都是相連的。所以當指標指向...