operator--
and operator++
are unusual because they exist in both prefix and postfix forms, so something needs to be done to differentiate between the two. As you've already noted, they decided to differentiate based on having the postfix form receive an extra (unused) parameter.
You can overload other postfix operators (e.g., operator[]
, operator()
and operator->
), but you don't have to do anything special to overload them because they only exist in postfix form.