類建構函式初始化列表

2021-08-29 20:48:37 字數 773 閱讀 5709

表現形式有三種

當前類進行初始化,尤其是當成員變數是乙個const或者乙個引用型別

class

demo

;}

需要在初始化列表中呼叫外部類成員的初始化函式

#include

using

namespace std;

classc1;

};classc2;

};intmain()

最後列印的結果是

class 1 construct function

class 2 construct function

派生類要在初始化列表中呼叫父類的建構函式

#include

using

namespace std;

class

base

private

:int val;};

class

derived

:public base

void

print_val()

private

:int p;};

intmain

(int argc ,

char

**argv)

列印結果如下

hello:45

C 類建構函式初始化列表

建構函式初始化列表以乙個冒號開始,接著是以逗號分隔的資料成員列表,每個資料成員後面跟乙個放在括號中的初始化式。例如 你可能以為上面的 將會首先做m y i,然後做m x m y,最後它們有相同的值。但是編譯器先初始化m x,然後是m y,因為它們是按這樣的順序宣告的。結果是m x將有乙個不可 的值。...

C 類建構函式初始化列表

在使用c 程式設計的過程當中,常常需要對類成員進行初始化,通常的方法有兩種 第一種方法 1.cmyclass csomeclass 2.第二種方法 1.csomeclass csomeclass x 0 y 1 2.本文將要 這兩種方法的異同以及如何使用這兩種方法。從技術上說,第二種方法比較好,但是...

C 類建構函式初始化列表

建構函式初始化列表以乙個冒號開始,接著是以逗號分隔的資料成員列表,每個資料成員後面跟乙個放在括號中的初始化式。例如 cexample 建構函式內部賦值 cexample 上面的例子中兩個建構函式的結果是一樣的。上面的建構函式 使用初始化列表的建構函式 顯式的初始化類的成員 而沒使用初始化列表的建構函...