[mem.general]

# 20 Memory management library [[mem]](./#mem)

## 20.1 General [mem.general]

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L6)

This Clause describes components for memory management[.](#1.sentence-1)

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L9)

The following subclauses describe general memory management facilities,
smart pointers, memory resources, and scoped allocators,
as summarized in Table [50](#tab:mem.summary "Table 50: Memory management library summary")[.](#2.sentence-1)

Table [50](#tab:mem.summary) — Memory management library summary [[tab:mem.summary]](./tab:mem.summary)  

| [ð](#tab:mem.summary-row-1) | **Subclause** | **Header** |
| --- | --- | --- |
| [ð](#tab:mem.summary-row-2)<br>[[memory]](memory "20.2 Memory") | Memory | <cstdlib>, <memory> |
| [ð](#tab:mem.summary-row-3)<br>[[smartptr]](smartptr "20.3 Smart pointers") | Smart pointers | <memory> |
| [ð](#tab:mem.summary-row-4)<br>[[mem.composite.types]](mem.composite.types "20.4 Types for composite class design") | Types for composite class design | <memory> |
| [ð](#tab:mem.summary-row-5)<br>[[mem.res]](mem.res "20.5 Memory resources") | Memory resources | <memory_resource> |
| [ð](#tab:mem.summary-row-6)<br>[[allocator.adaptor]](allocator.adaptor "20.6 Class template scoped_­allocator_­adaptor") | Scoped allocators | <scoped_allocator> |
