| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 731 人关注过本帖
标题:为什么构造函数在外面不行?高手帮忙啊!
取消只看楼主 加入收藏
xuru1990
Rank: 2
等 级:论坛游民
帖 子:36
专家分:23
注 册:2009-10-28
结帖率:50%
收藏
已结贴  问题点数:0 回复次数:0 
为什么构造函数在外面不行?高手帮忙啊!
class Complex
{
private:
    double real;
    double imag;
public:
    Complex (double r,double i);
    Complex operator+(Complex &s);
    Complex operator-(Complex &s);
    Complex operator*(Complex &s);
    Complex operator/(Complex &s);
    void show();
};
Complex::Complex(double r=0,double i=0)
{
real=r;
imag=i;
}
Complex Complex::operator+(Complex &s)
{
double r=real+s.real;
double i=imag+s.imag;
return Complex(r,i);
}
Complex Complex::operator-(Complex &s)
{
double r=real-s.real;
double i=imag-s.imag;
return Complex(r,i);
}
Complex Complex::operator*(Complex &s)
{
double r=real*s.real-imag*s.imag;
double i=real*s.imag+imag*s.real;
return Complex(r,i);
}
Complex Complex::operator/(Complex &s)
{
double d=s.real*s.real+s.imag*s.imag;
if(d==0) {cout<<"分母为0,错!"<<endl;exit(1);}
else
{double r=(real*s.real+imag*s.imag)/d;
double i=(imag*s.real-real*s.imag)/d;
return Complex(r,i);
}
}
void Complex::show()
{
if(real!=0) cout<<real;
else ;
 if(imag<0) cout<<"-"<<imag<<"i"<<endl;
 if(imag==0) cout<<endl;
 if(imag>0) cout<<"+"<<imag<<"i"<<endl;
}

void main()
{
Complex c1(1,2),c2(3,4),c3,c4,c5,c6;
c3=c1+c2;
c4=c1-c2;
c5=c1*c2;
c6=c1/c2;
c1.show();
c2.show();
c3.show();
c4.show();
c5.show();
c6.show();
}
  
搜索更多相关主题的帖子: 构造 函数 
2009-12-26 22:25
快速回复:为什么构造函数在外面不行?高手帮忙啊!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012566 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved