《物件導向程式設計 C 》析構函式

2021-09-03 01:59:12 字數 945 閱讀 7196

建立類的物件時,會自動呼叫某個合適的建構函式,同樣,當物件被摧毀時,也會自動呼叫乙個析構函式

析構函式的名稱與類的名稱是完全相同的,只是在前面加了個波浪號(~)作為字首,它不會返回任何值,也不能帶有任何引數。析構函式有助於在跳出程式(比如關閉檔案、釋放記憶體等)前釋放資源。

物件的摧毀出現在以下兩種情況:

與建構函式一樣,析構函式也是成員函式。由於析構函式不帶引數,因此不能被過載,每個類也只能擁有乙個析構函式。

#include

#include

using namespace std;

class cc(

const

char

* n)~c

()private:

string name;};

intmain()

cout

c* ptr=new c()

;//default constructor

delete ptr;

//destructor for the ptr object

return0;

//c0 destructor called

}

最後輸出結果為:

elen constructing.

null constructing.

anny constructing.

anny destructing

null destructing

null constructing.

null destructing

elen destructing

可以看出析構函式的呼叫順序即位棧的思想,最先建立的則最後呼叫析構函式。>_<

C 物件導向(二) 構造 析構函式

析構函式 destructor 構造 析構順序 建構函式 也叫構造器 在物件建立的時候回自動呼叫,一般用於完成物件的初始化工作 函式名與類同名,無返回值,可以有引數,可以過載,可以有多個建構函式 struct person person int age intmain 一旦自定義了建構函式,必須用其...

C 物件導向程式設計入門 建構函式與析構函式(二)

下面我們來看乙個帶引數的建構函式是如何進行物件的始化操作的。如下 include using namespace std class teacher void show protected char name void teacher show 我們建立了乙個帶有字元指標的帶有形參的teacher ...

python物件導向與構造構析函式

程式設計正規化 程式設計范型 程式設計正規化或程式設計法 範即模範 典範之意,正規化即模式 方法 是一類典型的程式設計風格,是指從事軟體工程的一類典型的風格 可以對照方法學 如 函式式程式設計 程式程式設計 物件導向程式設計 命令式程式設計等等為不同的程式設計范型。面向過程程式設計 面向過程 pro...