构造函数
没有返回值 不用写viod
函数名与类名相同
可以有参数 可以发生重载
构造函数由编译器自动调用 无须手动调用 只需调用一次
Person()
{
cout << "Person构造函数调用" << endl;
}
析构函数
没有返回值 不用写viod
函数名 与类名相同 函数名前加~
不可以有参数 不可以发生重载
析构函数 也是编译器自动调用一次 无需手动调用
~Person()
{
cout << "Person析构函数调用" << endl;
}
};
void test01()
{
Person p;//栈上 函数执行完会调用析构函数
}
注意:
1、构造和析构必须要声明在全局作用域
2、在system(“pause”)的时候声明周期还没有结束,故还没有调用析构函数