1.代码块
class complex
/*生成名为complex的对象,此处自动调用构造函数,自以为构造函数为生成对象的一个方法*/
{
public complex (double r=0,T i=0)/*默认实参*/
: re (r),im(i)/*将接收到的参数传给re和im的一个方法(initialization list初始值),优先此种方法,效率更高,此种赋值方法为构造函数特有,声明此处public complex(){}即为一个构造函数*/
{
re=r;
im=i;
}/*将接收到的参数传给re和im的一个方法,旧方法*/
complex& operator +=(const complex&);
T real () const { return re}
T imag () const{ return im}
private:/**/
double re, im;
friend complex&__doapl(complex*,const complex&);
};
{
complex c1(2 ,1);
complex c2;
complex* p=new complex(4);/*构造函数中创建对象的方法*/
}
总结
C++语言当创建对象时,自动调用一个函数:构造函数(constructor)
函数重载时,函数名可以相同,但变量类型不能相同,计算机会分辨不出来,函数重载常常发生在构造函数中。构造函数的名称一定要与类的名称相同,否则不能被称之为构造函数