[KUnitConversion] Question about overloading operators
Christoph Feck
cfeck at kde.org
Mon Nov 21 17:00:18 UTC 2016
On 21.11.2016 08:27, Ander Pijoan wrote:
> Value operator +(const Value &other)
> {
> Q_ASSERT( unit() == other.unit() );
> return Value( number() + other.number() , unit() );
> }
So when adding "3 m" and "40 cm" you want to have an assert (that isn't
compiled into code unless you are in debug builds)?
Also, for multiplication, you would need to add all relationships
between units, so that "40 mph" * "30 min" would result in "20 miles".
This is especially problematic for temporary units, e.g. "40 kg" * "20
m/s" * "30 Hz" should have a "Newton" unit result, but just multiplying
mass and speed has no unit assigned in KUnitConversion.
More information about the Kde-frameworks-devel
mailing list