#include <iostream>
using namespace std;
class Complex {
public:
double real;
double imag;
Complex(double r = 0, double i = 0);
void print();
Complex operator+(Complex c);
Complex operator*(Complex c);
};
Complex::Complex(double r, double i)
{
real = r; imag = i;
}
Complex Complex::operator+(Complex c)
{
Complex temp;
temp.real = real + c.real;
temp.imag = imag + c.imag;
return temp;
}
Complex Complex::operator*(Complex c)
{
Complex temp;
temp.real = real * c.real - imag * c.imag;
temp.imag = real * c.imag + imag * c.real;
return temp;
}
void Complex::print()
{
cout << "total real=" << real << " " << "total imag=" << imag << endl;
}
int main()
{
Complex com1(2.3, 4.6), com2(3.6, 2.8), total1, total2;
total1 = com1 + com2;
total1.print();
total2 = com1 * com2;
C++实验7
最新推荐文章于 2023-04-01 13:48:15 发布
本文探讨了C++中的运算符重载,包括加法和乘法的成员函数及全局函数重载方式。强调了重载的灵活性,不仅限于算术运算符,并提醒在实现时需关注返回值类型和函数匹配。通过运算符重载,可以方便地为类定义自定义行为,提升代码可读性和效率。
最低0.47元/天 解锁文章
5733

被折叠的 条评论
为什么被折叠?



