[#BloombergLP-bdldfp-operator_minus-0501]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdldfp.adoc[bdldfp]::operator&hyphen;
:relfileprefix: ../../
:mrdocs:

Subtract the specified `rhs` from the value of the specified `lhs` as described by IEEE&hyphen;754 and return a reference to this object&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&hyphen;(
    int lhs,
    xref:BloombergLP/bdldfp/Decimal32.adoc[Decimal32] rhs);
----

== Description

&ast; If `rhs` is signaling NaN, then store the value of the macro `EDOM` into `errno` and return a NaN&period; &ast; Otherwise if `rhs` is NaN, then return a NaN&period; &ast; Otherwise if `rhs` is infinity, then return infinity&period; &ast; Otherwise if subtracting `rhs` from `lhs` object&apos;s value results in 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 return infinity with the same sign as that result&period; &ast; Otherwise return the result of subtracting the value of `rhs` from the number `lhs`&period;

== Return Value

reference to this object

== Parameters

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


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