21xrx.com
2024-11-10 00:35:04 Sunday
登录
文章检索 我的文章 写文章
C++重载加法运算符
2023-07-05 08:47:13 深夜i     --     --
C++ 重载 加法运算符

C++是一种面向对象的编程语言,它提供了重载运算符的功能,以便程序员可以按照自己的需求为特定类型的值重新定义运算符的操作。其中一个常见的运算符是加法运算符“+”,它可以用来将两个数字加起来。在C++中,我们可以通过重载加法运算符来实现不同类型的对象相加的功能。

重载加法运算符的语法格式为:

返回类型 operator +(参数列表)

其中,返回类型可以是对象、指针或者引用,参数列表可以是任何类型。为了演示重载加法运算符的用法,下面展示一个示例:


#include<iostream>

using namespace std;

class Complex{

public:

  Complex(int r=0, int i=0)

  

    real=r;

    img=i;

  

  Complex operator +(Complex const &obj)

  {

     Complex res;

     res.real = real + obj.real;

     res.img = img + obj.img;

     return res;

  }

  

  void print() {

    cout<<real<<" + i"<<img<<endl;

  }

private:

  int real, img;

};

int main()

{

  Complex x(3,5),y(4,2);

  Complex z = x + y;

  z.print();

  return 0;

}

在上面的示例中,我们定义了一个名为Complex的类,表示复数。该类有两个成员变量,real表示实部,img表示虚部。我们使用Complex的构造函数初始化real和img。接下来,我们定义了一个名为operator +的函数,这是一个重载加法运算符的函数。此函数以一个Complex类型的对象作为输入,并返回一个Complex类型的对象作为输出。我们在函数内部使用加法运算符计算两个复数的实部和虚部之和,并返回新的复数对象。

在主函数中,我们创建了两个Complex对象x和y,它们包含有关第一个复数和第二个复数的信息。我们创建一个名为z的新复数,它使用重载的加法运算符来表示x和y的和,然后在屏幕上打印输出。最后,我们返回0,表示程序正常结束。

通过以上的示例代码,我们可以看到,C++中重载加法运算符的过程非常简单。只需要在类定义内部创建一个名为operator +的成员函数,该函数返回一个新的对象,该对象包含两个对象相加的结果。这样就可以轻松地扩展和定制任意C++类的功能。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复