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

首頁 > 編程 > C++ > 正文

C++析構函數

2019-11-08 20:10:48
字體:
來源:轉載
供稿:網友

析構函數

觸發條件:當對象被銷毀時,會自動調用析構函數,釋放資源。

定義格式:~類名()(沒有返回值,不允許加任何參數,故不能重載)

構造函數在對象實例化時自動調用,

析構函數在對象銷毀時自動調用。

 

構造函數沒有返回值。

拷貝構造函數沒有返回值、不能重載。

 

析構函數在棧、堆中都能被調用,但是在堆中不會自動調用,必須手動釋放內存,否則會造成內存泄漏

類{命名空間;成員函數;數據成員;}數據成員{普通數據成員;string;const成員;靜態數據成員;對象成員;}成員函數{屬性封裝函數;一般功能函數;特殊函數{構造函數{拷貝構造函數;默認構造函數};析構函數}}成員函數{參數默認值;函數重載;引用;const;}對象實例化{堆中實例化;戰中實例化;}

 

Teacher.h

#include<string>#include<iostream>using namespace std;class Teacher{public:    Teacher(string _name="q",int _age=25,int _m=100);    Teacher(const Teacher &tea);    ~Teacher();    void test(Teacher t);    void teach();    void setName(string _name);    string getName();    void setGender(string _gender);    string getGender();    void setAge(int _age);    int getAge();    int getMax();PRivate:    string m_strName;    string m_strGender;    int m_iAge;    const int m_iMax;};

Teacher.cpp

#include"Teacher.h"using namespace std;/*定義一個Teacher類:    1.自定義析構函數    2.普通方法實例化的對象,在銷毀對象時是否自動調用析構函數    3.通過拷貝構造函數實例化對象,在銷毀對象時是否自動調用析構函數數據成員:            名字            性別            年齡成員函數:            數據成員的封裝函數            授課teach另:            定義可以帶最多學生的個數,此為常量*/Teacher::Teacher(string _name,int _age,int _m):m_strName("jim"),m_iAge(10),m_iMax(100){    cout<<"Teacher(string _name,int _age,int _m)"<<endl;}Teacher::Teacher(const Teacher &tea):m_strName("jim"),m_iAge(10),m_iMax(100){    cout<<"Teacher(const Teacher &tea)"<<endl;}Teacher::~Teacher(){    cout<<"~Teacher()"<<endl;}void test(Teacher){}void Teacher::teach(){    cout<<"現在上課"<<endl;}void Teacher::setName(string _name){    m_strName=_name;}string Teacher::getName(){    return m_strName;}void Teacher::setGender(string _gender){    m_strGender=_gender;}string Teacher::getGender(){    return m_strGender;}void Teacher::setAge(int _age){    m_iAge=_age;}int Teacher::getAge(){    return m_iAge;}int Teacher::getMax(){    return m_iMax;}int main(){    Teacher t1;    Teacher t2=t1;    Teacher t3(t1);    test(t1);    Teacher *p=new Teacher();    delete p;    return 0;}
Teacher(string _name,int _age,int _m)Teacher(const Teacher &tea)Teacher(const Teacher &tea)Teacher(const Teacher &tea)~Teacher()Teacher(string _name,int _age,int _m)~Teacher()~Teacher()~Teacher()~Teacher()


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 米易县| 仙桃市| 清水县| 那坡县| 德昌县| 平利县| 福建省| 于都县| 象山县| 乌鲁木齐市| 汤原县| 开远市| 广德县| 英吉沙县| 耒阳市| 博兴县| 新野县| 万全县| 荣昌县| 靖州| 阿鲁科尔沁旗| 正镶白旗| 项城市| 樟树市| 漳浦县| 东宁县| 泾川县| 景泰县| 徐州市| 大石桥市| 新巴尔虎左旗| 东乡县| 长宁县| 诸城市| 环江| 台南县| 公主岭市| 西峡县| 泗洪县| 海阳市| 藁城市|