运算符重载实现加减并输出
时间: 2024-05-09 08:20:12 浏览: 80
以下是一个简单的示例,演示如何重载加减运算符并输出结果:
```c++
#include <iostream>
class Complex {
private:
double real;
double imag;
public:
Complex(double r = 0, double i = 0) : real(r), 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 << c.real << "+" << c.imag << "i";
return os;
}
};
int main() {
Complex a(1, 2), b(3, 4);
Complex c = a + b;
Complex d = a - b;
std::cout << c << std::endl;
std::cout << d << std::endl;
return 0;
}
```
在这个示例中,我们定义了一个名为“Complex”的类,它表示复数。类具有两个私有成员变量real和imag,分别表示复数的实部和虚部。我们重载了加号和减号运算符,并使用friend函数重载了输出运算符,以便能够直接使用std::cout来输出复数对象。最后,在主函数中,我们创建了两个复数对象a和b,并使用重载的运算符来执行加法和减法运算,并将结果输出到控制台上。
阅读全文