| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 300 人关注过本帖
标题:简单问题求指点错误。。。
只看楼主 加入收藏
fl8962
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
注 册:2012-10-17
结帖率:96.23%
收藏
已结贴  问题点数:18 回复次数:2 
简单问题求指点错误。。。
编写一个程序实现复数的相加功能,并且可以把复数转化为双精度浮点数进行运算。。下面是我写的代码但是没法运行。。
#include<iostream>
using namespace std;
class complex
{
public:
    complex(){real=0;image=0;}
    complex(double real,double image):real(r),image(i){}
    complex(double r){real=r;image=0;}
    operator double(){return real;}
    friend complex operator +(complex &c1,complex &c2);
    friend ostream & operator <<(ostream&,complex&);
    void display();
private:
    double real;
    double image;
};
complex operator +(complex &c1,complex &c2)
{
    return(c1.real+c2.real,c1.image+c2.image);
}
ostream& operator <<(ostream &output,complex &c)
{
    output<<c.real<<"+"<<c.image<<"i"<<endl;
    return output;
}
void complex::display()
{
    cout<<c.real<<c.image<<endl;
}
int main()
{
    complex c1(1,2),c2(2,3),c3;
    double c4;
    c3=c1+c2;
    cout<<c3;
    c4=c1+c2;
    cout<<c4;
    return 0;
}

搜索更多相关主题的帖子: private complex display include 
2013-01-31 21:29
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:18 
最好不要起名为 complex,因为C++标准库中已经有一个std::complex了
程序代码:
#include <iostream>

class dbl_complex
{
public:
    dbl_complex( double real=0.0, double image=0.0 ) : real_(real),image_(image)
    {
    }
    operator double() const
    {
        return real_;
    }
    friend dbl_complex operator+( const dbl_complex& a, const dbl_complex& b );
    friend std::ostream& operator<<( std::ostream&, const dbl_complex& );

private:
    double real_;
    double image_;
};
inline dbl_complex operator+( const dbl_complex& a, const dbl_complex& b )
{
    return dbl_complex( a.real_+b.real_, a.image_+b.image_ );
}
std::ostream& operator <<( std::ostream &os, const dbl_complex& c )
{
    return os << c.real_ << '+' << c.image_ << 'i';
}

using namespace std;

int main()
{
    dbl_complex c1(1,2), c2(2,3);
    dbl_complex c3 = c1 + c2;
    cout << c3 << endl;
    cout << c1+c2 << endl;

    return 0;
}

2013-02-01 08:36
不玩虚的
Rank: 9Rank: 9Rank: 9
来 自:四川
等 级:贵宾
威 望:10
帖 子:331
专家分:1301
注 册:2012-12-9
收藏
得分:0 
弄好了,我就路过啦,顺道学习下!

同学习......同进步....你帮我......我帮你.....上善若水.....
2013-02-01 18:41
快速回复:简单问题求指点错误。。。
数据加载中...
 
   



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

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