首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

类的实现,用"="重载?

2012-02-15 
类的实现,用重载?求助!!!复数类:1.按照a+bi的形式显示一个复数2.有复数z,复数y,能实现复数z+y相加.(要

类的实现,用"="重载?求助!!!
复数类:
1.按照a+bi的形式显示一个复数
2.有复数z,复数y,能实现复数z+y相加.(要求复数加法可以实现连加)
前两问好办!
3,实现complex   z=a+bi,   double   x=z;(x=a+b)
这一问不会!

[解决办法]
定义构造函数
Complex(double RealPart,double ImagePart)
{
m_ImagePart=ImagePart;
m_RealPart=RealPart;
}

加入一个拷贝构造函数
Complex(const Complex& cl)
{
m_ImagePart=cl.m_ImagePart;
m_RealPart=cl.m_RealPart;
}

Complex c1(3,4); //产生了3+4i ,即a+bi
Complex z=c1; //调用拷贝构造函数.完成z=a+bi, z=3+4i

再定义一个转换函数
operator double() //完成第三问后半部分,double x=z, x=a+b,即3+4=7
{
return m_ImagePart+m_RealPart;
}

热点排行