[Main]
Keywords=enum

[Description]
Defines a set of constants of type int.

[Explanation]
The syntax for defining constants using <CODE>enum</CODE> is
<PRE>enum [<I>tag</I>] {<I>name</I> [=<I>value</I>], ...};
</PRE>
The set can optionally be given a type tag name with <I>tag</I>. <I>name</I> is the
name of a constant that can optionally be assigned the (constant) value of <I>value</I>,
etc. For example,
<PRE>enum Numbers {One = 1, Two = 2, Three = 3, Four = 4, Five = 5};
</PRE>
If <I>value</I> is missing, then a value is assumed to be the value of the
previous constant in the list + 1. If this is the first constant in the list,
the default value is 0.
<BR><BR>
If you give a type tag name, then you can declare variables of enumerated type using
<PRE>enum <I>tag</I> <I>variable-names</I>;
</PRE>
For example,
<PRE>enum Numbers x, y, z;
</PRE>
declares three variables <CODE>x</CODE>, <CODE>y</CODE> and <CODE>z</CODE>, all of type
<I>Numbers</I> (they are, in fact, integer variables). More precise,
<CODE>'enum&nbsp;<I>tag</I>'</CODE> becomes a new type which is equal in rights with any
built-in type.
