[utilities.general]

# 22 General utilities library [[utilities]](./#utilities)

## 22.1 General [utilities.general]

[1](#1)

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

This Clause describes utilities that are generally useful in C++ programs; some
of these utilities are used by other elements of the C++ standard library[.](#1.sentence-1)

These utilities are summarized in Table [66](#tab:utilities.summary "Table 66: General utilities library summary")[.](#1.sentence-2)

Table [66](#tab:utilities.summary) — General utilities library summary [[tab:utilities.summary]](./tab:utilities.summary)  

| [ð](#tab:utilities.summary-row-1) | **Subclause** | **Header** |
| --- | --- | --- |
| [ð](#tab:utilities.summary-row-2)<br>[[utility]](utility "22.2 Utility components") | Utility components | <utility> |
| [ð](#tab:utilities.summary-row-3)<br>[[pairs]](pairs "22.3 Pairs") | Pairs |  |
| [ð](#tab:utilities.summary-row-4)<br>[[tuple]](tuple "22.4 Tuples") | Tuples | <tuple> |
| [ð](#tab:utilities.summary-row-5)<br>[[optional]](optional "22.5 Optional objects") | Optional objects | <optional> |
| [ð](#tab:utilities.summary-row-6)<br>[[variant]](variant "22.6 Variants") | Variants | <variant> |
| [ð](#tab:utilities.summary-row-7)<br>[[any]](any "22.7 Storage for any type") | Storage for any type | <any> |
| [ð](#tab:utilities.summary-row-8)<br>[[expected]](expected "22.8 Expected objects") | Expected objects | <expected> |
| [ð](#tab:utilities.summary-row-9)<br>[[bitset]](bitset "22.9 Bitsets") | Fixed-size sequences of bits | <bitset> |
| [ð](#tab:utilities.summary-row-10)<br>[[function.objects]](function.objects "22.10 Function objects") | Function objects | <functional> |
| [ð](#tab:utilities.summary-row-11)<br>[[bit]](bit "22.11 Bit manipulation") | Bit manipulation | <bit> |
