用C++编写全局加法运算符函数,完成复数求加法运算。该函数不在类内部,但可以被类使用
时间: 2024-03-09 14:47:38 浏览: 55
好的,以下是示例代码:
```c++
class ComplexNumber {
private:
double real_part;
double imag_part;
public:
ComplexNumber(double real, double imag) {
real_part = real;
imag_part = imag;
}
double get_real_part() {
return real_part;
}
double get_imag_part() {
return imag_part;
}
};
// 全局加法运算符函数
ComplexNumber operator+(ComplexNumber& a, ComplexNumber& b) {
double real = a.get_real_part() + b.get_real_part();
double imag = a.get_imag_part() + b.get_imag_part();
return ComplexNumber(real, imag);
}
// 示例
int main() {
ComplexNumber a(1, 2);
ComplexNumber b(3, 4);
ComplexNumber c = a + b;
cout << c.get_real_part() << " " << c.get_imag_part() << endl; // 输出 4 6
return 0;
}
```
在上面的代码中,我们首先定义了一个 `ComplexNumber` 类,包含了两个私有成员变量 `real_part` 和 `imag_part`,以及两个公有成员函数 `get_real_part()` 和 `get_imag_part()`,用于获取实部和虚部。然后,我们定义了一个全局加法运算符函数 `operator+`,该函数接受两个 `ComplexNumber` 类型的参数,分别表示两个复数。在函数中,我们简单地对两个复数的实部和虚部进行加法运算,并返回一个新的 `ComplexNumber` 对象,表示两个复数相加的结果。最后,我们在 `main()` 函数中对两个复数进行了加法运算,并打印出结果。
希望这样的回答能够帮到您,如果您还有其他问题,请随时提出。
阅读全文