Answers
不知道C++对内置类型的自增是怎么样的,自己重载了一下后自增运算符,结果也是死循环的。
测试代码如下:
class X
{
public:
explicit X(int xx):x(xx){}
X operator ++(int)
{
X temp(*this);
x++;
return temp;
}
X operator = (const X& xx)
{
this->x = xx.x;
return *this;
}
int x;
};
int main()
{
X x(0);
while (x.x < 5)
{
x = x++;
std::cout<<x.x;
}
return 0;
}
而且楼主的那段代码字 codepad 上面编译之后,报了严重warning的。
sdsd-
answered 12 years, 1 month ago