перегрузка пре-инкремента и пост-инкремента

Я видел пример реализации пре-инкремента и пост-инкремента, в котором утверждается, что пре-инкремент с перегрузкой может быть определен как

T& T ::operator++()

, а пост-инкремент с перегрузкой может быть определен и реализован с точки зрения преинкремента следующим образом

const T T::operator++(int){
  const T old(*this);
  ++(*this);
  return old;
}

у меня есть два вопроса:

1) что означает «старый»?

2) ++ (* this) предполагается использовать пре-инкремент, а исходное определение предварительного приращения не имеет аргументов. Однако здесь есть * this.

8
задан user785099 13 October 2011 в 01:37
поделиться