title: Why are enums considered compound types?
body: <p>Arrays, functions, pointers, references, classes, unions, enumerations and pointers to members are <em>compound types</em>.</p>
  
  <p>My understanding of a compound type is that is based on other type(s). For example, <code>T[n]</code>, <code>T*</code> and <code>T&amp;</code> are all based on <code>T</code>. Then what other type(s) is an enumeration based on?</p>
  
  <p>Or if my understanding of compound types is incorrect, what exactly is it about a type that makes it a compound type? Is <em>compound</em> simply a synonym for <em>user-defined</em>?</p>