21xrx.com
2024-12-28 13:21:21 Saturday
登录
文章检索 我的文章 写文章
C++重载运算符实现复数加减
2023-07-04 21:13:55 深夜i     --     --
C++ 重载运算符 复数加减

C++语言中的重载运算符可以实现复数加减。复数是由实数和虚数组成的数,可表示为 a+bi,其中 a 是实数,b 是虚数,i 是虚数单位。

重载运算符可以使得编程更加简单、直观,同时也可以提高程序的效率和可读性。在C++中,重载运算符使得程序员能够定义类的操作符,使得其具有类似于内置类型的行为。

C++重载运算符的具体实现步骤如下:

1. 定义一个复数类,包含实部和虚部。

2. 重载加法和减法运算符,使得它们可以对复数进行加减操作。

3. 在运算符函数中实现复数加减的逻辑。

下面是一个实现复数加减的示例程序:


#include <iostream>

using namespace std;

class Complex {

public:

  Complex(double r = 0, double i = 0) : real(r), imag(i) {};

  Complex operator+(const Complex &c) const {

    return Complex(this->real+c.real, this->imag+c.imag);

  }

  Complex operator-(const Complex &c) const {

    return Complex(this->real-c.real, this->imag-c.imag);

  }

  void print() const {

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

  }

private:

  double real;

  double imag;

};

int main() {

  Complex c1(1.0, 2.0);

  Complex c2(3.0, 4.0);

  Complex c3 = c1 + c2;

  Complex c4 = c1 - c2;

  c1.print();

  c2.print();

  c3.print();

  c4.print();

  return 0;

}

在这个程序中,我们定义了一个叫做 Complex 的类,它包含了实部和虚部两个成员变量。

在类中,我们重载了加法和减法运算符,使其可以对复数进行加减运算。

在运算符重载函数中,我们实现了对复数进行加减的逻辑,并返回一个新的复数对象,以表示加减的结果。

最后,在 main 函数中,我们创建了两个复数对象 c1 和 c2,并使用加号和减号对它们进行加减操作。我们还将加减的结果存到了 c3 和 c4 中,并通过 print 函数将复数对象的实部和虚部打印出来。

通过这个程序的运行结果,我们可以看到 c3 和 c4 的值分别为 4+6i 和 -2-2i,即 c1 和 c2 的加减结果。这就是通过重载运算符实现复数加减的基本流程。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复
    相似文章