相关疑难解决方法(0)

C++ - 如何重载operator + =?

给出以下代码片段,

class Num
{
public:
    Num(int iNumber = 0) : m_iNumber(iNumber) {}

    Num operator+=(const Num& rhs)
    {
        this->m_iNumber = (this->m_iNumber + rhs.m_iNumber);
        return *this;
    }
private:
    int m_iNumber;
};

//===========================================================
int _tmain(int argc, _TCHAR* argv[])
{
    Num a(10);

    Num b(100);

    b += a;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我想知道如何正确超载operator+=.

问题:

  1. 如何定义此运算符的签名?特别是,什么应该用于返回值?

  2. 如何实现功能体?

  3. 如何使用这个重载运算符?

我已经提供了上述解决方案,但我担心这是不正确的.

c++

22
推荐指数
3
解决办法
7万
查看次数

标签 统计

c++ ×1