Sobrecargando operator=, operator+=, operator/=, operator *=, operator double (o float o long double) y alguna cosilla que se me escapa.
Nada muy complicado, y tampoco muy útil. Se puede hacer con un simple template que tome como parámetros el tipo y los límites.
Como digo, tan complicado como útil.
- ferdy