加法运算符重载和减法运算符重载
时间: 2023-11-22 14:54:44 浏览: 113
加法运算符重载为成员函数-C++ 运算符重载
在C++中,我们可以通过运算符重载来定义自定义的加法和减法运算符。运算符重载是指在类中定义一个函数,使得该函数可以在使用特定运算符时被调用。
以下是加法运算符重载的示例:
```cpp
class Complex{
private:
double real;
double imag;
public:
Complex(double r = 0, double i = 0){
real = r;
imag = i;
}
Complex operator+(const Complex& c){
Complex res(real + c.real, imag + c.imag);
return res;
}
};
```
在上面的示例中,我们定义了一个名为Complex的类,该类具有两个属性:real和imag,表示复数的实部和虚部。我们还定义了一个构造函数和一个加法运算符重载函数。加法运算符重载函数使用operator+作为函数名,并使用const Complex&作为参数。在函数体中,我们创建了一个新的Complex对象,将其实部和虚部初始化为当前对象和传入对象的实部和虚部的和,然后将该对象返回。
下面是减法运算符重载的示例:
```cpp
class Complex{
private:
double real;
double imag;
public:
Complex(double r = 0, double i = 0){
real = r;
imag = i;
}
Complex operator-(const Complex& c){
Complex res(real - c.real, imag - c.imag);
return res;
}
};
```
在上面的示例中,我们定义了一个名为Complex的类,该类具有两个属性:real和imag,表示复数的实部和虚部。我们还定义了一个构造函数和一个减法运算符重载函数。减法运算符重载函数使用operator-作为函数名,并使用const Complex&作为参数。在函数体中,我们创建了一个新的Complex对象,将其实部和虚部初始化为当前对象和传入对象的实部和虚部的差,然后将该对象返回。
阅读全文