写开发计算器的重载
时间: 2023-08-13 15:08:26 浏览: 53
开发计算器时,可以通过重载运算符实现不同类型的数值进行计算。以下是一些常见的运算符重载示例:
1. 加法运算符重载:
```cpp
int operator+(int a, int b) {
return a + b;
}
double operator+(double a, double b) {
return a + b;
}
// 字符串拼接
std::string operator+(const std::string& a, const std::string& b) {
return a + b;
}
```
2. 减法运算符重载:
```cpp
int operator-(int a, int b) {
return a - b;
}
double operator-(double a, double b) {
return a - b;
}
```
3. 乘法运算符重载:
```cpp
int operator*(int a, int b) {
return a * b;
}
double operator*(double a, double b) {
return a * b;
}
```
4. 除法运算符重载:
```cpp
int operator/(int a, int b) {
if (b == 0) {
throw std::runtime_error("division by zero");
}
return a / b;
}
double operator/(double a, double b) {
if (b == 0) {
throw std::runtime_error("division by zero");
}
return a / b;
}
```
这样就可以根据不同的数据类型,使用相应的运算符进行计算了。当然,还有其他许多运算符可以进行重载,例如取模运算符、逻辑运算符等。
阅读全文