The prefix function increments the count, and returns this object by reference.
The postfix function saves the old value (by constructing a new instance with this object via the copy constructor), increments the count, and return the saved object by value.
Counter & Counter::operator++() { ++count; return *this;}// postfix++, return old value by valueconst Counter Counter::operator++(int dummy) { Counter old(*this); // copy constructor ++count; return old;}