C 建構函式之預設建構函式

2021-09-29 04:13:14 字數 978 閱讀 6011

參考部落格:

以下內容是在上述博主的部落格中提煉出來的:

一、預設建構函式的含義是啥:

主要就是:預設建構函式在呼叫的時候不需要顯示傳入實參的建構函式

二、預設的建構函式的分類

1、無參建構函式:就是沒有引數的建構函式

class sample 

};

2、帶有形參,並且帶有預設值的建構函式

class sample 

};

三、預設構造引數在什麼時候被呼叫

1、被呼叫的情況:就是被編譯器需要的時候,才會生成預設建構函式(待考證)

2、具體需要的情況:

(1)當該類的類物件資料成員有預設建構函式時。//待考證

(2)當該類的基類有預設建構函式時。

(3)當該類的基類為虛基類時。

(4)當該類有虛函式時。//待考證

四、預設建構函式又名預設建構函式

注意,這個名字真的真的是我第一次才知道,之前被幾個建構函式弄暈了,這個概念又更新了我對c++新的認識

1、預設建構函式又名預設建構函式,只能使用乙個,也就是說在乙個類中只能出現乙個無參建構函式或者只能出現乙個帶有形參帶有預設值的建構函式

上**解釋:

#include #include using namespace std;

class sample

// 預設建構函式

sample(int m = 10)

};int main()

五、使用預設建構函式的時候建立物件不能後面帶有括號

#include#include class sample 

};int main()

我使用的是vs編譯器,如果將s變成s()的時候會發現,不會列印出來東西,只有將更改為s的時候才有結果

C 建構函式與預設建構函式

建構函式 c 用於構建類的新物件時需要呼叫的函式,該函式無返回型別!注意 是 無 不是空!void 預設建構函式 未提供顯式初始值時,用來穿件物件的建構函式。以上是二者的定義,但是單從定義很難對二者進行區別,下面依然看 1 class testclass 2 上面的注釋中已標出了預設建構函式和建構函...

C 學習筆記之建構函式(一)預設建構函式

定義 在未提供顯式的初始值時,用來建立物件的建構函式。舉例 class testclass private int m a int m b public testclass 預設建構函式1 testclass int a,int b 建構函式 testclass int a 10,int b 5 預...

C 預設建構函式

c 預設建構函式 一直認為若程式設計師沒有自己定義無引數的建構函式,那麼編譯器會自動生成預設建構函式,來進行對成員函式的初始化,但這種認為是有誤的,不全面的.預設的建構函式分為有用的和無用的,所謂無用的預設建構函式就是乙個空函式 什麼操作也不做,而有用的預設建構函式是可以初始化成員的函式。對建構函式...