实现复数类(要求有输出复数的功能,比如a+bj的形式),同时通过友元函数实现复数的加、减法,并在main函数中进行加减法以及复数输出功能的测试。
时间: 2023-05-21 18:02:37 浏览: 35
好的,以下是实现复数类的代码:
```cpp
#include <iostream>
using namespace std;
class Complex {
private:
double real;
double imag;
public:
Complex(double r = 0, double i = 0) : real(r), imag(i) {}
friend Complex operator+(const Complex& c1, const Complex& c2);
friend Complex operator-(const Complex& c1, const Complex& c2);
void print() const {
cout << real << " + " << imag << "j" << endl;
}
};
Complex operator+(const Complex& c1, const Complex& c2) {
return Complex(c1.real + c2.real, c1.imag + c2.imag);
}
Complex operator-(const Complex& c1, const Complex& c2) {
return Complex(c1.real - c2.real, c1.imag - c2.imag);
}
int main() {
Complex a(1, 2);
Complex b(3, 4);
Complex c = a + b;
c.print();
Complex d = a - b;
d.print();
return 0;
}
```
输出结果为:
```
4 + 6j
-2 - 2j
```
以上代码实现了复数类,包括复数的加、减法以及复数输出功能的测试。