[#mp_units-utility-operator_plus-0b] = xref:mp_units.adoc[mp_units]::xref:mp_units/utility.adoc[utility]::operator+ :relfileprefix: ../../ :mrdocs: Adds a `safe_int` to a floating‐point value. == Synopsis Declared in `<mp‐units/utility/safe_int.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<typename U> requires treat_as_floating_point<U> [[nodiscard]] constexpr auto operator+( U lhs, xref:mp_units/utility/safe_int-07.adoc[safe_int] rhs) requires requires { lhs + static_cast<U>(rhs.value_); }; ---- [NOTE] ==== This function is a https://en.cppreference.com/w/cpp/language/friend[hidden friend] of xref:mp_units/utility/safe_int-07.adoc[safe_int], declared only inside that class: it can be found only through argument-dependent lookup. ==== == Return Value the sum of `lhs` and the wrapped value [NOTE] ==== The return value https://en.cppreference.com/cpp/language/attributes/nodiscard[should not be discarded^]. ==== == Template Parameters [cols="1,4"] |=== | Name| Description | *U* | a floating‐point‐like type (`treat_as_floating_point<U>` is `true`) |=== == Parameters [cols="1,4"] |=== | Name| Description | *lhs* | the floating‐point value | *rhs* | the `safe_int` to add |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#