您的位置:首页 > 编程语言 > C语言/C++

C++ 析构函数

2015-10-08 14:17 267 查看
对象销毁时回收资源用的

定义格式:

~类名()
没有自定义的析构函数系统会自动生成

析构函数在对象销毁时被自动调用

析构函数没有参数,没有返回值,也不能重载

对象的生命历程



#include <iostream>
#include <string>
using namespace std;

class Teacher
{
public:
Teacher(string name = "Jim", int age = 1);
Teacher(const Teacher &tea);
~Teacher();
void setName(string name);
string getName();
void setAge(int age);
int getAge();
private:
string m_strName;
int m_iAge;
};

void test(Teacher t)
{

}

int main() {

Teacher t1;
Teacher t2 = t1;

return 0;
}

Teacher::Teacher(string name, int age):m_strName(name), m_iAge(age)
{
cout << "Teacher(string name, int age)" << endl;
}

Teacher::Teacher(const Teacher &tea)
{
cout << "Teacher(const Teacher &tea)" << endl;
}

Teacher::~Teacher()
{
cout << "~Teacher()" << endl;
}
void Teacher::setName(string name)
{
m_strName = name;
}

string Teacher::getName()
{
return m_strName;
}

void Teacher::setAge(int age)
{
m_iAge = age;
}

int Teacher::getAge()
{
return m_iAge;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++