zoukankan      html  css  js  c++  java
  • 10.1 分别通过函数和重载运算符来实现复数相加

    #include <iostream>
    using namespace std;
    class Complex
    {
    public:
    	Complex(){real=0;imag=0;}
    	Complex(int r,int i)
    	{
    		real=r;
    		imag=i;
    	}
    	Complex complex_add(Complex &c2)//复数相加函数
    	{
    		Complex c;
    		c.real=real+c2.real;
    		c.imag=imag+c2.imag;
    		return c;
    	}
    	void display();
    private:
    	int real,imag;
    };
    void Complex::display()
    {
    	cout<<'('<<real<<','<<imag<<"i)"<<endl;
    }
    int main()
    {
    	Complex c1(3,4),c2(-5,10),c3;
    	c3=c1.complex_add(c2);
    	cout<<"c1=";
    	c1.display();
    	cout<<"c2=";
    	c2.display();
    	cout<<"c1+c2=";
    	c3.display();
    	return 0;
    }
    

    #include <iostream>
    using namespace std;
    class Complex
    {
    public:
    	Complex(){real=0;imag=0;}
    	Complex(int r,int i)
    	{
    		real=r;
    		imag=i;
    	}
    	Complex operator+(Complex &c2)//重载运算符的函数,用于复数相加
    	{
    		Complex c;
    		c.real=real+c2.real;
    		c.imag=imag+c2.imag;
    		return c;
    	}
    	void display();
    private:
    	int real,imag;
    };
    void Complex::display()
    {
    	cout<<'('<<real<<','<<imag<<"i)"<<endl;
    }
    int main()
    {
    	Complex c1(3,4),c2(-5,10),c3;
    	c3=c1+c2;//系统自动调用c1.operator+(c2)来完成c1+c2;
    	cout<<"c1=";
    	c1.display();
    	cout<<"c2=";
    	c2.display();
    	cout<<"c1+c2=";
    	c3.display();
    	return 0;
    }
    重载运算符函数的一般格式如下:
    函数类型 operator运算符名称(参数列表)
    {对运算符重载的处理}
    



  • 相关阅读:
    vue组件重新加载的方法
    事件触发方法获取当前值的写法 (含方法要传2个参数的写法)
    mac 解压 rar压缩文件
    表格
    小米8安装charles证书方法
    视频结构化技术栈全解析
    多目标跟踪全解析,全网最全
    SpringBoot
    技术方案设计的方法
    Java的强引用、软引用、弱引用、虚引用
  • 原文地址:https://www.cnblogs.com/sxy201658506207/p/7586432.html
Copyright © 2011-2022 走看看