重载运算符+,用于两个复数相加,用成员函数实现
时间: 2023-06-02 09:02:58 浏览: 110
以下是用成员函数实现复数相加运算符重载的示例代码:
```
#include <iostream>
class Complex {
public:
Complex(double r = 0.0, double i = 0.0) : real(r), imag(i) {}
Complex operator+(const Complex& other) const {
return Complex(real + other.real, imag + other.imag);
}
void print() const {
std::cout << real << " + " << imag << "i" << std::endl;
}
private:
double real;
double imag;
};
int main() {
Complex c1(1.0, 2.0);
Complex c2(3.0, 4.0);
Complex c3 = c1 + c2;
c3.print(); // 输出 4 + 6i
return 0;
}
```
在上面的代码中,我们定义了一个名为 Complex 的类,表示一个复数,其中包含实部 real 和虚部 imag。我们重载了加号运算符 +,用于将两个复数相加。我们使用成员函数实现了这个重载运算符,它接受一个 const Complex& 类型的参数 other,表示另一个复数,返回一个新的 Complex 对象,表示两个复数相加的结果。
在 main 函数中,我们创建了两个复数 c1 和 c2,然后将它们相加,将结果存储在 c3 中,并输出 c3 的值。输出的结果为 4 + 6i,表示两个复数相加的和。
阅读全文