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

Return to the specified `allocator` a block of raw memory at the specified `p` address that is suitably sized and aligned to hold an object of (templatize parameter) `t&lowbar;TYPE`&period; Optionally specify `n` for the number of objects&semi; otherwise a single object is assumed&period; The behavior is undefined unless `p` refers to a block with the same type and number of objects previously allocated from a copy of `allocator` and not yet deallocated&period;

== Synopsis

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

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class t&lowbar;ALLOCATOR,
    class t&lowbar;POINTER&gt;
static
void
deallocateObject(
    t&lowbar;ALLOCATOR const& allocator,
    t&lowbar;POINTER p,
    std::size&lowbar;t n = 1);
----


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