19 派生類的建構函式

2021-10-07 01:24:14 字數 1098 閱讀 4975

class

bug;};

class

flyclass

:public bug

;bug:

bug(

int legs,

int color)

flybug::

flybug

(int legs,

int color,

int wings)

//正確的flybug建構函式

flybug::

flybug

(int legs,

int color,

int wings)

;bug

(legs,color)

intmain()

在建立派生類物件時,需要呼叫基類的建構函式:初始化派生類物件中從基類繼承的成員。在執行乙個派生類的建構函式之前,總是先執行基類的建構函式。

呼叫基類建構函式的兩種方式:

–顯示方式:在派生類的建構函式中,為基類的建構函式提供引數。

derived:derived(arg_derived-list):base(arg_base-list)

–隱式方式:在派生類的建構函式中,省略基類建構函式時,派生類的建構函式會自動呼叫基類的預設建構函式.

派生類的析構函式被執行時,執行完派生類的析構函式後,自動呼叫基類的析構函式。

class

base

~base()

};class

derived

:public base

~derived()

};intmain()

//結果

/*base 3 construted

derived constructed

derived destructed

base 3 destructed

用初始化列表初始化成員類和基類。

1)在執行基類的建構函式,用以初始化派生類物件中從基類繼承的成員;

2)在執行成員物件類的建構函式,用以初始化派生類物件中成員物件。

3)最後執行派生類自己的建構函式。

(35 1)派生類的建構函式

建構函式和類的名字是一致的 派生類名 形式引數列表 基類名 基類建構函式實參列表 派生類初始化列表 class point 建構函式 class rect public point 派生類建構函式 類名 形式引數列表 子物件名 子物件建構函式實參列表 類初始化列表 classa a類沒有建構函式,系...

1 4 3 7 派生類的構造方法

根據改寫。加入自己見解使其更易懂 如下 功能 講述上圖派生類建構函式的執行順序 包含各層次類都靜態構造 例項建構函式 public class mybaseclass public mybaseclass 5.第乙個類的例項建構函式執行 public class mydrivedclass myba...

5 3派生類的建構函式和析構函式

派生類建構函式一般形式 派生類建構函式名 總參數列 積累建構函式名 實際引數列表 派生類中新增資料成員初始化語句 看下面 例子 class student 基類 student 預設建構函式 student 基類析構函式 protected int a double b string c class...