[#zero_after_free_allocator-01]
= zero&lowbar;after&lowbar;free&lowbar;allocator
:mrdocs:

Allocator that clears the memory it manages before returning it to the system&period;

== Synopsis

Declared in `&lt;support&sol;allocators&sol;zeroafterfree&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;typename T&gt;
struct zero&lowbar;after&lowbar;free&lowbar;allocator;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:zero_after_free_allocator-01/value_type.adoc[`value&lowbar;type`] 
| The type of object this allocator allocates&period;
|===


== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:zero_after_free_allocator-01/2constructor-02.adoc[`zero&lowbar;after&lowbar;free&lowbar;allocator`]         [.small]#[constructor]#
| Constructors
| xref:zero_after_free_allocator-01/allocate.adoc[`allocate`] 
| Allocates uninitialized memory for n objects using std&colon;&colon;allocator&period;
| xref:zero_after_free_allocator-01/deallocate.adoc[`deallocate`] 
| Clears and returns memory previously obtained from allocate&period;
|===


== Specializations

[cols="1,4"]
|===
| Name| Description
| xref:zero_after_free_allocator-0c.adoc[`zero&lowbar;after&lowbar;free&lowbar;allocator&lt;byte&gt;`] 
| Allocator that clears the memory it manages before returning it to the system&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:operator_eq-01f.adoc[operator&equals;&equals;]`
| Compares two allocators for equality&semi; they are always equal since the allocator is stateless&period;
|===

== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:operator_eq-038.adoc[`operator&equals;&equals;`]
| Compares two allocators for equality&semi; they are always equal since the allocator is stateless&period;
|===


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