diff --git a/docs/users_guide/framework_basics/dimensionless_quantities.md b/docs/users_guide/framework_basics/dimensionless_quantities.md index 9547aec1..8b4f72e5 100644 --- a/docs/users_guide/framework_basics/dimensionless_quantities.md +++ b/docs/users_guide/framework_basics/dimensionless_quantities.md @@ -166,10 +166,11 @@ inline constexpr auto ppm = parts_per_million; ### Superpowers of the unit `one` -Quantities of the unit `one` are the only ones that are implicitly convertible from a raw value -and explicitly convertible to it. This property also expands to usual arithmetic operators. +Quantities of the unit `one` are the only ones that are: -Thanks to the above, we can type: +- implicitly constructible from the raw value, +- explicitly convertible to a raw value, +- comparable to a raw value. ```cpp quantity inc(quantity q) { return q + 1; } @@ -179,6 +180,14 @@ if (auto q = inc(42); q != 0) legacy(static_cast(q)); ``` +This property also expands to usual arithmetic operators. + +!!! note + + Those rules do not apply to all the dimensionless quantities. It would be unsafe and misleading + to allow such operations on units with a magnitude different than `1` (e.g., `percent` or + `radian`). + ## Angular quantities