legongju.com
我们一直在努力
2024-12-27 21:27 | 星期五

c++实现运算符重载

在C++中,运算符重载是一种允许你自定义已有运算符行为的方法

#include 
using namespace std;

class Complex {
public:
    Complex(double real = 0, double imag = 0) : real_(real), imag_(imag) {}

    // 重载加法运算符
    Complex operator+(const Complex& other) const {
        return Complex(real_ + other.real_, imag_ + other.imag_);
    }

    // 重载输出运算符
    friend ostream& operator<<(ostream& os, const Complex& c) {
        os << "(" << c.real_ << ", " << c.imag_ << ")";
        return os;
    }

private:
    double real_;
    double imag_;
};

int main() {
    Complex c1(3, 4);
    Complex c2(1, 2);

    Complex c3 = c1 + c2;
    cout << "c1 + c2 = " << c3 << endl;

    return 0;
}

在这个例子中,我们定义了一个名为Complex的类,它表示复数。我们重载了加法运算符(operator+)以允许两个复数相加。同时,我们还重载了输出运算符(operator<<),以便在输出复数时提供更友好的格式。

main函数中,我们创建了两个复数对象c1c2,并将它们相加得到一个新的复数对象c3。然后我们使用重载的输出运算符将c3打印出来。

未经允许不得转载 » 本文链接:https://www.legongju.com/article/58058.html

相关推荐

  • c#正则表达式能进行复杂文本解析吗

    c#正则表达式能进行复杂文本解析吗

    是的,C#中的正则表达式可以进行复杂的文本解析。正则表达式是一种强大的文本处理工具,可以用来匹配、查找、替换和分割符合特定模式的文本。
    在C#中,使用...

  • c#正则表达式如何过滤敏感词

    c#正则表达式如何过滤敏感词

    在C#中,你可以使用正则表达式来过滤敏感词。以下是一个简单的示例,展示了如何使用正则表达式替换敏感词:
    using System;
    using System.Text.Regular...

  • c#正则表达式怎样匹配日期格式

    c#正则表达式怎样匹配日期格式

    在C#中,你可以使用Regex类来匹配日期格式。为了匹配常见的日期格式(如MM/dd/yyyy、yyyy-MM-dd等),你可以使用以下正则表达式:
    using System;
    usin...

  • c#正则表达式能提取网页链接吗

    c#正则表达式能提取网页链接吗

    是的,C#中的正则表达式可以用来提取网页链接。可以使用System.Text.RegularExpressions命名空间中的Regex类来编写和运行正则表达式。
    以下是一个示例代码片...

  • c++实现函数重载形式

    c++实现函数重载形式

    在C++中,函数重载(Overloading)是指在同一个作用域内声明多个同名函数,但它们的参数列表不同
    #include using namespace std; // 函数重载:加法运算符<...

  • c++实现抽象类方法

    c++实现抽象类方法

    在C++中,抽象类是一种不能被实例化的类,它通常包含一个或多个纯虚函数
    #include // 定义一个抽象类 Shape
    class Shape {
    public: // 构造函数 ...

  • android threadlocal如何避免内存泄漏

    android threadlocal如何避免内存泄漏

    ThreadLocal是Android中用于实现线程局部变量的类,它允许你在不同的线程之间存储和访问线程特有的数据。然而,如果不正确地使用ThreadLocal,可能会导致内存泄漏...

  • android threadlocal数据如何同步

    android threadlocal数据如何同步

    在Android中,ThreadLocal提供了一种在多线程环境下存储线程局部变量的机制。然而,ThreadLocal本身并不提供同步机制,因此在使用ThreadLocal时需要注意数据同步...