结构体中的运算符重载(运算符和逻辑符)

struct complexN//包含四种运算符的重载 
{
	double real;
	double imagi;
	complexN(double a,double b)
	{
		real=a;
		imagi=b;
	}
	complexN()
	{
		real=0;
		imagi=0;
	}
	complexN operator+ (complexN a)
	{
		complexN c;
		c.real=real+a.real;
		c.imagi=imagi+a.imagi; 
		return c;
	}
	complexN operator- (complexN a)
	{
		complexN c;
		c.real=real-a.real;
		c.imagi=imagi-a.imagi;
		return c;
	}
	complexN operator* (complexN a)
	{   complexN c;
		c.real=real*a.real-imagi*a.imagi;
		c.imagi=imagi*a.real+real*a.imagi;
		return c;
	}
	complexN operator/ (complexN a)
	{
		complexN c;
		c.real=(real*a.real+imagi*a.imagi)/(a.real*a.real+a.imagi*a.imagi);
		c.imagi=(imagi*a.real-real*a.imagi)/(a.real*a.real+a.imagi*a.imagi);
		return c;
	}
	bool operator!=(complexN a)
	{
		return this->real!=a.real||this->imagi!=a.imagi;
	}
	bool operator==(complexN a)
	{
		return this->real==a.real&&this->imagi==a.imagi;
	}
	bool operator>=(complexN a)
	{
		return this->real>=a.real&&this->imagi>=a.imagi;
	}
	bool operator<=(complexN a)
	{
		return this->real<=a.real&&this->imagi<=a.imagi;
	}
	complexN operator=(complexN a)
	{
		this->real=a.real;
		this->imagi=a.imagi;
		return *this;
	}
};
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值