//思考为什么需要构造和析构函数
//这是C++编译器给我们提供的对象初始化的解决方案
#include<iostream>
using namespace std;
class test
{
public:
void init(int _a,int _b)
{
a=_a;
b=_b;
}
protected:
private:
int a;
int b;
} ;
int main ()
{
int a=10,b=20;
test t1;//若有提供构造函数,C++编译器会默认给你提供一个构造函数
//若没有提供构造函数,copy构造函数,C++编译器会自动给程序员提供一个默认的copy构造函数。
t1.init(a,b);
test tarray[3];//在用类定义数组的时候可以通过下面两种方式给数组赋值
/*一:
tarray[0].init(1,2) ;
tarray[1].init(1,2);
tarray[2].init(1,2);*/
/*二:
test t2;t2.init(1,2);
test t3;t2.init(1,2);
test t4;t2.init(1,2);
//在这种情况下显示的初始化方案显得很蹩脚
test tarray[3]={t2,t3,t4};
//在这种情况下,就不能再进这种显示的初始化了。
test tarray[99]={t2,t3,t4};*/
cout<<"hello"<<endl;
return 0;
}
构造函数和析构函数有什么用,为什么需要构造和析构函数
最新推荐文章于 2024-07-17 00:30:41 发布