Di norma questa è la soluzione che si usa, talvolta usando come unità interna il sottomultiplo più piccolo utilizzabile (in modo da poter lavorare con interi, se la cosa può essere utile dal punto di vista delle prestazioni o per evitare problemi di precisione FP). Spesso comunque l'oggetto che rappresenta la scelta dell'utente in termini di unità di misura viene tenuto come globale, in modo da evitare di doverlo continuamente passare in giro; in quest'ultimo caso però bisogna stare molto attenti a distinguere tra funzioni di parsing/output da/per utente e da/per formati human-readable (ma che comunque non devono essere influenzati dalle preferenze).