国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C++筆記之析構函數

2019-11-14 12:46:06
字體:
來源:轉載
供稿:網友

析構函數是在對象銷毀時被調用的函數,當實例化一個對象時占用的資源需要程序員手動回收時,一般用來釋放資源。析構函數的定義格式:~類名(){}。析構函數沒有任何參數。

//文件名為Student.h#include <iostream>#include <string>using namespace std;class Student {public: Student(); Student(const Student &stu); ~Student();//析構函數,對象被銷毀時會自動調用PRivate: char *m_pName;};#include "Student.h"Student::Student() { m_pName = new char[20];//從堆中申請的內存,需要手動回收}Student::Student(const Student &stu) { cout << "調用拷貝構造函數" << endl;}Student::~Student() { delete m_pName;//釋放對象占用的內存 m_pName = NULL; cout << "我要死啦!" << endl;//函數體}/*作為函數參數傳遞過來的對象實際上生成了一個對象的副本(利用拷貝構造函數),當函數執行完畢后,這個對象的副本會被銷毀,這時也會調用析構函數*/void test(Student stu) {}int main() { Student stu1; Student stu2 = stu1; Student stu3(stu1); test(stu1); system("pause"); return 0; //這里并沒有調用析構函數,但是程序執行完畢時系統會自動調用}

析構函數的特點

如果沒有自定義的析構函數則系統自動生成;析構函數在對象銷毀時自動調用;析構函數沒有返回值、沒有參數、不能重載。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东兰县| 中牟县| 抚州市| 都昌县| 水城县| 鹤岗市| 台江县| 康定县| 文成县| 永德县| 黄浦区| 徐闻县| 泰宁县| 鄄城县| 鹰潭市| 灵丘县| 长顺县| 紫云| 安丘市| 赤峰市| 大庆市| 罗定市| 许昌市| 高邑县| 沭阳县| 壶关县| 海南省| 伊川县| 尖扎县| 三门峡市| 昔阳县| 杨浦区| 静乐县| 大宁县| 分宜县| 海安县| 康保县| 大安市| 广灵县| 红安县| 通榆县|