using category = int;
| Category | Includes facets | |
| collate | collate<char>, collate<wchar_t> | |
| ctype | ctype<char>, ctype<wchar_t> | |
| codecvt<char, char, mbstate_t> | ||
| codecvt<char16_t, char8_t, mbstate_t> | ||
| codecvt<char32_t, char8_t, mbstate_t> | ||
| codecvt<wchar_t, char, mbstate_t> | ||
| monetary | moneypunct<char>, moneypunct<wchar_t> | |
| moneypunct<char, true>, moneypunct<wchar_t, true> | ||
| money_get<char>, money_get<wchar_t> | ||
| money_put<char>, money_put<wchar_t> | ||
| numeric | numpunct<char>, numpunct<wchar_t> | |
| num_get<char>, num_get<wchar_t> | ||
| num_put<char>, num_put<wchar_t> | ||
| time | time_get<char>, time_get<wchar_t> | |
| time_put<char>, time_put<wchar_t> | ||
| messages | messages<char>, messages<wchar_t> | 
| Category | Includes facets | |
| collate | collate_byname<char>, collate_byname<wchar_t> | |
| ctype | ctype_byname<char>, ctype_byname<wchar_t> | |
| codecvt_byname<char, char, mbstate_t> | ||
| codecvt_byname<char16_t, char8_t, mbstate_t> | ||
| codecvt_byname<char32_t, char8_t, mbstate_t> | ||
| codecvt_byname<wchar_t, char, mbstate_t> | ||
| monetary | moneypunct_byname<char, International> | |
| moneypunct_byname<wchar_t, International> | ||
| money_get<C, InputIterator> | ||
| money_put<C, OutputIterator> | ||
| numeric | numpunct_byname<char>, numpunct_byname<wchar_t> | |
| num_get<C, InputIterator>, num_put<C, OutputIterator> | ||
| time | time_get<char, InputIterator> | |
| time_get_byname<char, InputIterator> | ||
| time_get<wchar_t, InputIterator> | ||
| time_get_byname<wchar_t, InputIterator> | ||
| time_put<char, OutputIterator> | ||
| time_put_byname<char, OutputIterator> | ||
| time_put<wchar_t, OutputIterator> | ||
| time_put_byname<wchar_t, OutputIterator> | ||
| messages | messages_byname<char>, messages_byname<wchar_t> |