The C++ Programming Language Stroustrup では、inc/dec オーバーロードの次の例を示しています。
class Ptr_to_T {
T* p;
T* array ;
int size;
public:
Ptr_to_T(T* p, T* v, int s); // bind to array v of size s, initial value p
Ptr_to_T(T* p); // bind to single object, initial value p
Ptr_to_T& operator++(); // prefix
Ptr_to_T operator++(int); // postfix
Ptr_to_T& operator--(); // prefix
Ptr_to_T operator--(int); // postfix
T&operator*() ; // prefix
}
前置演算子は参照によって返されるのに、後置演算子は値によって返されるのはなぜですか?
ありがとう。