use*_*099 8 c++ operator-overloading
我看到了一个关于实现预增量和后增量的示例,它声称可以将重载预增量定义为
T& T ::operator++()
并且可以按照预增量来定义和实现过载后增量,如下所述
const T T::operator++(int){
  const T old(*this);
  ++(*this);
  return old;
}
我有两个问题:
1)"旧"是什么意思?
2)假设++(*this)使用预增量,原始预增量定义没有参数.但是,这里有*.
“老”是什么意思?
该方法是后增量。返回当前值(“旧值”),然后该值递增(“新值”)。
++(*this) 假定使用预自增,并且原始预自增定义没有参数。然而,这里有*this。
*this不是一个论据。括号不是必需的,它们是为了可读性而存在的。
它相当于++*this.