最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

析構(gòu)函數(shù)

2023-02-07 14:28 作者:江不默  | 我要投稿

/*

析構(gòu)函數(shù)(destructor) :

與構(gòu)造函數(shù)相反,當(dāng)對象結(jié)束其生命周期,

如對象所在的函數(shù)已調(diào)用完畢時(shí),系統(tǒng)自動(dòng)執(zhí)行析構(gòu)函數(shù)。


析構(gòu)函數(shù)往往用來做“清理善后” 的工作

(例如在建立對象時(shí)用new開辟了一片內(nèi)存空間,

delete會(huì)自動(dòng)調(diào)用析構(gòu)函數(shù)后釋放內(nèi)存)。

1.不能有參數(shù) , 所以不可重載

2.無返回值


3.當(dāng)類中含有指針時(shí)?

delete 該類的一個(gè) 對象,不會(huì)撤銷里面指針?biāo)傅目臻g,但析構(gòu)函數(shù)可以


所以 析構(gòu)函數(shù)三法則:

有復(fù)制構(gòu)造函數(shù)和賦值運(yùn)算符重載(例如將=的功能變成深復(fù)制),需要析構(gòu)函數(shù)?

*/


/*

c++中delete和析構(gòu)函數(shù)之間的區(qū)別:

https://www.cnblogs.com/qbdj/p/10882213.html

*/

#include<iostream>

using namespace std;

class CDemo {

public:

? ? ~CDemo() {? //析構(gòu)函數(shù)

? ? ? ? cout << "Destructor called"<<endl;

? ? }

};

int main() {

? ? CDemo array[2];? //構(gòu)造函數(shù)調(diào)用2次

? ? CDemo* pTest = new CDemo;? //構(gòu)造函數(shù)調(diào)用

? ? delete pTest;? //析構(gòu)函數(shù)調(diào)用

? ? cout << "-----------------------" << endl;

? ? pTest = new CDemo[2];? //構(gòu)造函數(shù)調(diào)用2次

? ? delete[] pTest;? //析構(gòu)函數(shù)調(diào)用2次

? ? cout << "Main ends." << endl;

? ? return 0;

}


析構(gòu)函數(shù)的評論 (共 條)

分享到微博請遵守國家法律
穆棱市| 绥德县| 灵山县| 玉环县| 渑池县| 安仁县| 盐边县| 弥勒县| 遵义县| 雷州市| 米脂县| 崇义县| 江都市| 敖汉旗| 峨山| 周至县| 电白县| 景德镇市| 永新县| 太原市| 大荔县| 钟山县| 海盐县| 迭部县| 蓬溪县| 泰州市| 都兰县| 治县。| 嘉荫县| 玉山县| 黔东| 禹城市| 玉龙| 定兴县| 鹿邑县| 社会| 宝丰县| 玛沁县| 池州市| 永胜县| 定襄县|