0
class LongInt
{
public: LongInt& operator++(); //returning a reference
}
LongInt LongInt::operator++()
{
...
LongInt d;
d.setVector(temp);
return d; //returning a reference to an object that will be wiped out because it is out of scope
}
我在這裏有點困惑。我顯然必須通過引用來重載增量運算符,但我認爲這甚至不可能。我得到一個內存錯誤,因爲我的指針指向的對象消失。那麼我應該如何重載++運算符呢?重載必須返回對某個對象的引用的運算符
如果我們修改對象,爲什麼我們必須返回對象的引用? – user2967016
@ user2967016因此'++ object'具有遞增的值。 – Brian
......是的,但是如果我直接修改變量,我不需要返回它,是嗎? – user2967016