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