Is the following set of statements correct. si::length has a length_dimension and is part of the si::system.
boost::units::si::meter_base_unit::unit_type has a length_dimension and is part of the si::system.
boost::units::us::foot_base_unit::unit_type has a length_dimension and is part of the us system.
Since an explicit conversion is needed I definitely don't understand the differences between the following three statements. I've included examples to show my limited understanding.implicit conversion of quantity<Unit,Y>
toquantity<Unit,Z>
is allowed ifY
andZ
are implicitly convertible.quantity<si::length, int> to quantity<si::length, double>
explicit conversion between quantity<Unit1,Y>
andquantity<Unit2,Z>
is allowed ifUnit1
andUnit2
have the same dimensions and ifY
andZ
are implicitly convertible.quantity<us::foot_base_unit::unit_type, int> to quantity<si::length, double>Both have the same length dimension.
implicit conversion between quantity<Unit1,Y>
andquantity<Unit2,Z>
is allowed ifUnit1
reduces to exactly the same combination of base units asUnit2
and ifY
andZ
are convertible.