4. c++设计一个复数类Complex,数据成员是实部和虚部,函数成员至少包括构造函数,数据成员分别读写操作,复数相加,复数相减,输出复数信息等操作。
时间: 2024-10-23 17:09:38 浏览: 35
在C++中,设计一个复数类`Complex`可以按照以下步骤进行:
```cpp
class Complex {
private:
double real; // 实部
double imag; // 虚部
public:
// 构造函数:默认初始化
Complex() : real(0), imag(0) {}
// 构造函数:接受两个参数初始化
Complex(double r, double i) : real(r), imag(i) {}
// 数据成员读取操作
double getReal() const { return real; }
double getImaginary() const { return imag; }
// 数据成员设置操作
void setReal(double r) { real = r; }
void setImaginary(double i) { imag = i; }
// 复数相加
Complex operator+(const Complex& other) const {
return Complex(real + other.real, imag + other.imag);
}
// 复数相减
Complex operator-(const Complex& other) const {
return Complex(real - other.real, imag - other.imag);
}
// 输出复数信息
friend std::ostream& operator<<(std::ostream& os, const Complex& c) {
os << "Complex(" << c.real << ", " << c.imag << ")";
return os;
}
};
```
在这个类中,我们定义了私有成员变量`real`和`imag`代表复数的实部和虚部,以及对应的getter和setter方法。通过重载运算符`+`和`-`实现了复数之间的加法和减法操作。为了方便输出复数信息,我们还重载了`<<`运算符,使得可以用`cout`直接打印复数对象。
阅读全文