定义:
所谓构造函数就是在对象创建时其作用的一个特殊成员函数,因此通常使用构造函数来实现类中数据的初始化,构造函数从形式上看就是一个函数,但是规定它必须与类的名字一直,并且没有返回类型。
而析构函数是构造函数的补充。析构函数是在对象被销毁之前起作用的特殊成员函数,通常用于做一些收尾工作。析构函数看起来也与一般成员函数一样,但是它的函数名必须是所属类名前面加一个~,并且同样不允许有返回值
#include<iostream>
using namespace std;
class myclass
{
public:
int i;
myclass();
~myclass();
};
myclass::myclass()
{
i=10;
}
myclass::~myclass()//析构函数
{
cout<<"析构函数"<<endl;
}
int main()
{
myclass m;
cout<<m.i<<endl;
return 0;
}
这个程序并不完成任何实际的功能,只是演示了如何使用构造函数和析构函数。
虽然构造函数不允许有返回值,但是它可以带一个或多个参数。
#include<iostream>
using namespace std;
class myclass
{
public:
int i;
myclass(int x);
~myclass();
};
myclass::myclass(int x)
{
i=x;
}
myclass::~myclass()//析构函数
{
cout<<"析构函数"<<endl;
}
int main()
{
//myclass m=myclass(10);
myclass m(10);
cout<<m.i<<endl;
return 0;
}