안녕하세요.
저도 비슷한 진도를 나가고 있습니다.
도움이 될까 해서 남겨봅니다.
//postfix
Digit operator ++ (int)
{
Digit temp(m_digit);
// m_digit++;
++(*this);
return temp;
}
후위 연산자에서 ++(*this) 이 부분은 이미 전위연산자 오버로딩을 해놓은 상태라 그걸 활용한 부분이라고 설명하고 있습니다.
전위연산자 에서 ++(*this)를 해도 값이 올라가지 않는 ++연산자가 오버로딩이 안 되어 있어서 그렇습니다.
++(m_digit) 에서 m_digit은 멤버변수
++(*this) 에서 *this는 자기자신의 포인터를 dereferencing 한 것, 즉 객체이기 때문입니다.
감사합니다.