[#BloombergLP-bslma-ManagedPtr-0fa-release-05]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslma.adoc[bslma]::xref:BloombergLP/bslma/ManagedPtr-0fa.adoc[ManagedPtr]::release
:relfileprefix: ../../../
:mrdocs:

`release` overloads

== Synopses

Declared in `&lt;bslma&lowbar;managedptr&period;h&gt;`

Release ownership and return the target pointer with its deleter&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslma/ManagedPtr_PairProxy.adoc[ManagedPtr&lowbar;PairProxy&lt;TARGET&lowbar;TYPE, ManagedPtrDeleter&gt;]
xref:BloombergLP/bslma/ManagedPtr-0fa/release-0e.adoc[release]();
----

[.small]#xref:BloombergLP/bslma/ManagedPtr-0fa/release-0e.adoc[_» more&period;&period;&period;_]#

Release ownership, load `deleter`, and return the target pointer&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
TARGET&lowbar;TYPE*
xref:BloombergLP/bslma/ManagedPtr-0fa/release-00.adoc[release](xref:BloombergLP/bslma/ManagedPtrDeleter.adoc[ManagedPtrDeleter]* deleter);
----

[.small]#xref:BloombergLP/bslma/ManagedPtr-0fa/release-00.adoc[_» more&period;&period;&period;_]#

== Return Value

* pair of the target pointer and the deleter for the managed object
* raw pointer to the target object, or null if empty

== Parameters

[cols="1,4"]
|===
| Name| Description
| *deleter*
| out&hyphen;parameter receiving the current deleter
|===


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