定义并实现一个类 Myst,使下列语句能够正常运行。 Myst x(3.2), y(5,5), z(0.0); z = 8.9 – y; y = x – 6.3;

本文展示了如何在C++中定义和实现一个名为Myst的复数类,包括默认构造函数、带有参数的构造函数以及转换构造函数。此外,还实现了复数的减法运算符重载,使得可以进行如`z=8.9-y;`和`y=x-6.3;`这样的操作。示例代码展示了如何创建和使用这些复数对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问:定义并实现一个类 Myst,使下列语句能够正常运行。 Myst x(3.2), y(5,5), z(0.0); z = 8.9 – y;
y = x – 6.3;

答:

#include <iostream>
using namespace std;

//复数类
class Myst {
public:
	Myst() : m_real(0.0), m_imag(0.0) { }
	Myst(double real, double imag) : m_real(real), m_imag(imag) { }
	Myst(double real) : m_real(real), m_imag(0.0) { }  //转换构造函数
public:
	friend Myst operator-(const Myst &a, const Myst &b);

public:
	double real() const { return m_real; }
	double imag() const { return m_imag; }
private:
	double m_real;  //实部
	double m_imag;  //虚部
};

//重载-运算符
Myst operator-(const Myst &a, const Myst &b) {
	Myst c;
	c.m_real = a.m_real - b.m_real;
	c.m_imag = a.m_imag - b.m_imag;
	return c;
}
int main() {

	Myst x(3.2), y(5, 5), z(0.0);
	z = 8.9 - y;
	y = x - 6.3;
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值