[#BloombergLP-bdldfp-operator_plus-01a2]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdldfp.adoc[bdldfp]::operator&plus;
:relfileprefix: ../../
:mrdocs:

Add the value of the specified `rhs` to the value of the specified `lhs` as described by IEEE&hyphen;754 and return the result&period;

== Synopsis

Declared in `&lt;bdldfp&lowbar;decimal&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdldfp/Decimal32.adoc[bdldfp::Decimal32]
operator&plus;(
    xref:BloombergLP/bdldfp/Decimal32.adoc[Decimal32] lhs,
    xref:BloombergLP/bdldfp/Decimal32.adoc[Decimal32] rhs);
----

== Description

&ast; If either of `lhs` or `rhs` is signaling NaN, then store the value of the macro `EDOM` into `errno` and return a NaN&period; &ast; Otherwise if either of `lhs` or `rhs` is NaN, return a NaN&period; &ast; Otherwise if `lhs` and `rhs` are infinities of differing signs, store the value of the macro `EDOM` into `errno` and return a NaN&period; &ast; Otherwise if `lhs` and `rhs` are infinities of the same sign then return infinity of that sign&period; &ast; Otherwise if the sum of `lhs` and `rhs` has an absolute value that is larger than `std&colon;&colon;numeric&lowbar;limits&lt;Decimal32&gt;&colon;&colon;max()` then store the value of the macro `ERANGE` into `errno` and set this object to infinity with the same sign as that result&period; &ast; Otherwise return the sum of the number represented by `lhs` and the number represented by `rhs`&period;

== Return Value

sum of the operands

== Parameters

[cols="1,4"]
|===
| Name| Description
| *lhs*
| left&hyphen;hand operand
| *rhs*
| right&hyphen;hand operand
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
