c 學習筆記 析構函式

2021-07-28 13:31:05 字數 1002 閱讀 9208

宣告:註明**出處 

析構函式

在建立物件的時候系統會自動呼叫建構函式,在物件需要被銷毀的時候同樣系統會自動呼叫乙個函式

析構函式與構造函式呼叫順序是反轉過來的,先呼叫建構函式的後呼叫析構函式。

#include

using

namespace std;

class

test

~test

()private

:int num;};

intmain

()程式執行結果:

0  constructor

1  constructor

2  constructor

3  constructor

3  destructor

2  destructor

1  destructor

0  destructor

類的建構函式負責物件完成初始化及其它相關操作,而析構函式則用於銷毀物件時完成相應的資源釋放工作。

注意 動態申請的東西得自己銷毀

有new 有delete  特別注意new多個的情況 不然會記憶體洩漏

#include

using namespace std;

class array

;array(int * a, int n);

array(array &a);//複製建構函式

void setnum(int value, int index);

int * getaddress();

void display();

int getlength()

~array();

private:

int length;

int * num;

};array::~array()

{if(num != null)

delete num;//new了多個 要把它給人工釋放

cout<<"destructor"<

C 學習筆記 虛析構函式

我們直接上案例 虛析構函式.cpp 定義控制台應用程式的入口點。include stdafx.h includeusing namespace std pragma warning disable 4996 class a a private char p class b public a b pr...

析構函式(C 學習筆記 19)

一 什麼是析構函式?析構函式也是一種特殊的成員函式。它執行與建構函式相反的操作,通常用於執行一些清理任務,如釋放分配給物件的記憶體空間等。二 析構函式的特點是什麼?1 析構函式名與類名相同,但它前面必須加乙個波浪號 2 析構函式不返回任何值。在定義析構函式時,是不能說明它的型別的,甚至說明為void...

C 學習筆記 虛析構函式與純虛析構函式

開始學c 了,所以又重拾以前學習過的相關概念 析構函式是當乙個物件的生命週期結束時,會自動執行析構函式。析構函式的定義 define a h class a endif 虛析構函式與純虛析構函式的定義 假定類名為a define a h class a endif define a h class ...