classcomplex{public:complex(double r =0,double i =0):re(r),im(i){}complex():re(0),im(0){}//不能通过编译,会有二义性//当构建一个无参的complex对象时,第一个构造函数有缺省值,故二者均为候选函数,编译器无法确定到第调用哪个
complex&operator+=(const complex&);doublereal()const{return re;}doubleimage()const{return im;}private:double re, im;friend complex&__doapl(complex*,const complex&);};