不设计构造和析构函数 编译器会提供空语句的构造和析构
初始化--构造函数
- 无返回类型
- 函数名与类名相同
- 构造函数可以有参数可以发生重载
- 创建对象的时候构造函数会自动调用且只调用一次
class Person
{
public:
Person()
{
cout << "无参构造函数调用" << endl;
}
Person(int a)
{
cout<< "有参构造函数调用"<<endl;
}
Person(Person &p)
{
cout<< "拷贝函数调用"<<endl;
}
~Person()
{
cout << "析构函数调用" << endl;
}
};
清理--析构函数
- 无返回类型
- 函数名与类名相同在名称前面加 ~
- 构造函数不能有参数不能发生重载
- 对象在销毁前构造函数会自动调用且只调用一次