构造函数
1)C++中的类可以定义与类名相同的特殊成员函数,这种与类名相同的成员函数叫做构造函数;
2)构造函数在定义时可以有参数;
3)没有任何返回类型的声明。
析构函数
析构函数与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了一片内存空间,delete会自动调用析构函数后释放内存)。
//例如
class Test
{
private:
int a b c;
public:
Test(); //无参构造函数
Test(int _a); //有参构造函数
Test(int _a, int _b, int _c = 5); //带默认参数的构造函数
~Test(); //析构函数
};
Test::Test()
{
}
Test::~Test()
{
}
Test::Test(int _a)
{
}
Test::Test(int _a, int _b, int _c)
{
}
小总结
1)构造函数是C++中用于初始化对象状态的特殊函数
2)构造函数在对象创建时自动被调用
3)构造函数和普通成员函数都遵循重载规则
4)拷贝构造函数是对象正确初始化的重要保证