运算符重载

说明

常见的符号+ - * / 和其他符号基本上都能在C++上进行重载,定义成我们所需求的,但是千万不要定义的不太好理解。
在对符号进行重载时要加上operator 例如:ccc ccc::operator +()

题目:

将+进行重新定义可以进行两个复数的相加。

实例:

#include<iostream>
using namespace std;
class ccc
{
public:
    ccc()
      {
        r=0;
        i=0;
      }//构造函数
    ccc(double r1,double i1)
    {
        r=r1;
        i=i1;
    }
    ccc operator +(ccc &c2);
    void ccc::show();
private:
    double r;
    double i;
};
ccc ccc::operator +(ccc &c2)
{
    ccc c(0,0);
    c.r=r+c2.r;
    c.i=i+c2.i;
    return c;
}
void ccc::show()
{
    cout<<r<<"+"<<i<<"i"<<endl;
}

int main()
    {
    ccc c1(3,4),c2(7,8),c3(0,0);
    c3=c1+c2;
    c1.show();
    c2.show();
    c3.show();
}

运行结果:

3+4i
7+8i
10+12i

添加新评论

已有 3 条评论

学习了,哈哈哈

你的写的比较好 忙于C语言的计算机二级c++的知识好久没看了,都忘记了。

孟超 孟超 回复 @半叶子
0 0

加油吧