[#BloombergLP-bslma-ManagedPtrUtil]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslma.adoc[bslma]::ManagedPtrUtil
:relfileprefix: ../../
:mrdocs:

This utility class provides a general no&hyphen;op deleter, which is useful when creating managed pointers to stack&hyphen;allocated objects&period;

== Synopsis

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

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
struct ManagedPtrUtil;
----

== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslma/ManagedPtrUtil/allocateManaged-0e.adoc[`allocateManaged`] 
| `allocateManaged` overloads
| xref:BloombergLP/bslma/ManagedPtrUtil/allocatorDeleter.adoc[`allocatorDeleter`] 
| Make use of `AllocatorUtil&colon;&colon;deleteObject` to destroy and deallocate the specified `object` using the specified allocator&period; The behavior is undefined unless `allocator` is an instance of `bslma&colon;&colon;Allocator` that was used to supply memory for `object` and `object` points to an instance of `ELEMENT&lowbar;TYPE` that is within its lifetime&period;
| xref:BloombergLP/bslma/ManagedPtrUtil/makeManaged.adoc[`makeManaged`] 
| Create an object of the (template parameter) `ELEMENT&lowbar;TYPE` from the specified `args&period;&period;&period;` arguments, and return a `ManagedPtr` to manage the new object&period; Use the currently installed default allocator to supply memory for the footprint of the new object but do _not_ implicitly pass the default allocator as the allocator argument to its constructor even if `bslma&colon;&colon;UsesBslmaAllocator&lt;ELEMENT&lowbar;TYPE&gt;&colon;&colon;value` is `true`&period; Note that an allocator may be included in `args`, but see `allocateManaged` for an alternative function that is better suited to creating managed pointers to objects of allocator&hyphen;aware type&period;
| xref:BloombergLP/bslma/ManagedPtrUtil/noOpDeleter.adoc[`noOpDeleter`] 
| Deleter function that does nothing&period;
|===



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