重载postfix增量运算符

时间:2010-11-09 03:35:49

标签: c++ arrays operator-overloading

我试图将postfix增量运算符重载为一个类的成员函数,该类将大数字存储为int数组。但它一直被归为0.有关为什么这不起作用的任何提示?

这是一个家庭作业问题,所以我想要更多的提示而不是直接的代码。感谢。

会员数据如下:

largeInt = new int[maxSize];
int maxSize, currentSize;

其中currentSize是一个跟踪变量,用于跟踪当前阵列的大小。

我的代码是:

Load函数将int放在数组的第一个位置,并将其他所有内容移位。

/* postfix*/
NewInt& NewInt::operator++(int nothing)
{   
    int count = 1;
    largeInt[currentSize - count] += 1;
    while(largeInt[currentSize - count] > 9)
    {
            if(currentSize - count - 1 < 0)
            {
                    firstVar = true;
                    Load(1);
            }
            else    
                    largeInt[currentSize - count - 1] += 1;

            count++;              
    }

    return *this;
}   

1 个答案:

答案 0 :(得分:3)

您的评论不同意您的代码。 operator++(int)是后缀增量,operator++()是前缀。