C 建構函式 析構函式 161019

2021-07-23 20:14:23 字數 773 閱讀 1555

建構函式和析構函式是對物件進行初始化和**物件資源。

物件的生命週期從建構函式開始,以析構函式結束。如果乙個類含有建構函式,在例項化該類的物件時就會呼叫建構函式,如果含有析構函式就會在銷毀物件時呼叫它

析構函式前有~,會自動釋放這個物件所占用的記憶體空間

1.建構函式名稱必須跟類一樣

2.建構函式沒有返回型別,可以帶引數或者不帶

3.一般建構函式是public的,如果是private的,表明類不能被例項化,通常用於只含有靜態成員的類

4建構函式的作用是完成類的初始化,不要對做初始化之外的事情,

預設建構函式:不帶引數的建構函式一般

例項建構函式:

靜態建構函式:這個建構函式是屬於類的,不屬於任何乙個例項,只會被執行一次 需要使用static關鍵字 class staticclass

私有建構函式:通常用在值含有靜態成員的類中,如果類具有乙個或者多個私有建構函式而沒有公共建構函式,則不允許其他類建立該類的例項

public class trig

private trig() //私有建構函式,阻止建立類的任何例項

析構函式

不能在結構中定義析構函式,只能對類使用

乙個類只有乙個析構函式

無法繼承或者過載析構函式

無法呼叫析構函式

析構函式沒有修飾符,也沒有引數

呼叫順序跟建構函式相反

C 建構函式 析構函式 虛析構函式

一般地,建立物件和刪除物件時,父類建構函式 子類建構函式 子類析構函式 父類析構函式。特例 如果用new建立了乙個物件,並將父類的指標指向這個子類的物件,那麼用delete撤銷物件時,系統只執行基類的析構函式,而不執行派生類的析構函式。如果希望按照子類析構函式 父類析構函式的順序執行,那麼應該將基類...

C 建構函式,析構函式

一 建構函式 在建立類的物件時自動呼叫的乙個函式,主要是為物件本身做初始化工作 沒有返回值,名字和類的名字相同,因為是在建立物件時候自動呼叫的,所以必須型別為public的,可以帶引數,可以有多個 如果類中沒有建構函式,在下面三種情況下,會自動的新增預設的建構函式 1.如果類中有虛函式,或者類中有虛...

C 建構函式 析構函式

在學習類的成員方法時,遇到了兩個函式。簡單介紹一下 一 建構函式 建構函式是類中比較特殊的成員函式,它也是一種方法。主要用來為物件分配儲存空間,完成初始化操作,例如給類的成員變數賦值等。一般來說,建構函式一旦開始執行,那麼物件的生命週期就開始了,最終它將以析構函式結束。如果乙個類含有建構函式,在例項...