[#mp_units-quantity-01-2constructor-0b] = xref:mp_units.adoc[mp_units]::xref:mp_units/quantity-01.adoc[quantity]::quantity :relfileprefix: ../../ :mrdocs: Constructs a quantity from a numerical value and a reference with a different unit. == Synopsis Declared in `<mp‐units/framework/quantity.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename FwdValue, xref:mp_units/Reference-0ba.adoc[Reference] R2> requires (!equivalent(unit, get_unit(R2{}))) && detail::QuantityConstructibleFrom<quantity, quantity<R2{}, std::remove_cvref_t<FwdValue>>> [[nodiscard]] constexpr quantity( FwdValue&& val, R2 ref); ---- == Description The value is first converted to the quantity of reference `ref` and then scaled to this quantity's unit. == Return Value [NOTE] ==== The return value https://en.cppreference.com/cpp/language/attributes/nodiscard[should not be discarded^]. ==== == Parameters [cols="1,4"] |=== | Name| Description | *val* | the numerical value to store, expressed in the unit of `ref` | *ref* | a reference whose unit is not equivalent to `unit` |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#