This commit is contained in:
2025-10-25 03:02:53 +03:00
commit 043225d523
3416 changed files with 681196 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
[enumerated.types]
# 16 Library introduction [[library]](./#library)
## 16.3 Method of description [[description]](description#enumerated.types)
### 16.3.3 Other conventions [[conventions]](conventions#enumerated.types)
#### 16.3.3.3 Type descriptions [[type.descriptions]](type.descriptions#enumerated.types)
#### 16.3.3.3.2 Enumerated types [enumerated.types]
[1](#1)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/lib-intro.tex#L604)
Several types defined in [[input.output]](input.output "31Input/output library") are[*enumerated types*](#def:type,enumerated "16.3.3.3.2Enumerated types[enumerated.types]")[.](#1.sentence-1)
Each enumerated type may be implemented as an enumeration or as a synonym for
an enumeration[.](#1.sentence-2)[138](#footnote-138 "Such as an integer type, with constant integer values ([basic.fundamental]).")
[2](#2)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/lib-intro.tex#L614)
The enumerated type *enumerated* can be written:enum *enumerated* { V0, V1, V2, V3, … };
inline const enumerated C0(V0);inline const enumerated C1(V1);inline const enumerated C2(V2);inline const enumerated C3(V3);
[3](#3)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/lib-intro.tex#L626)
Here, the names C0,C1, etc. represent[*enumerated elements*](#def:enumerated_element "16.3.3.3.2Enumerated types[enumerated.types]") for this particular enumerated type[.](#3.sentence-1)
All such elements have distinct values[.](#3.sentence-2)
[138)](#footnote-138)[138)](#footnoteref-138)
Such as an integer type, with constant integer
values ([[basic.fundamental]](basic.fundamental "6.9.2Fundamental types"))[.](#footnote-138.sentence-1)