cpp实现运算符重载+-负号重载通过对象进行输出运算后结果简便一点
下面是一个简单的示例,演示了如何在C++中实现运算符重载+、-(负号)以及重载<<、>>运算符:
#include <iostream>
using namespace std;
class Number {
private:
int value;
public:
Number(int v = 0) : value(v) {}
Number operator+(const Number& other) const {
return Number(value + other.value);
}
Number operator-() const {
return Number(-value);
}
friend ostream& operator<<(ostream& os, const Number& num);
friend istream& operator>>(istream& is, Number& num);
};
ostream& operator<<(ostream& os, const Number& num) {
os << num.value;
return os;
}
istream& operator>>(istream& is, Number& num) {
is >> num.value;
return is;
}
int main() {
Number a, b;
cout << "Enter two numbers: ";
cin >> a >> b;
Number sum = a + b;
Number neg = -a;
cout << "Sum: " << sum << endl;
cout << "Negative of a: " << neg << endl;
return 0;
}
在上面的示例中,我们定义了一个名为Number的类,它包含一个私有成员变量value,用于存储数字的值。我们重载了运算符+和-,分别用于实现两个Number对象的加法和负号操作。我们还重载了<<和>>运算符,用于实现对象的输出和输入。
在main函数中,我们创建了两个Number对象a和b,并通过重载的>>运算符从用户输入中获取它们的值。然后,我们使用重载的+运算符计算了a和b的和,并使用重载的-运算符计算了a的负数。最后,我们使用重载的<<运算符将结果输出到屏幕上。
运行示例,用户将被要求输入两个数字,然后程序将计算它们的和并输出结果。同时,它还将计算第一个数字的负数并输出。
原文地址: https://www.cveoy.top/t/topic/i9Xi 著作权归作者所有。请勿转载和采集!