Simplifying the use of enum types with typedef
Before we examine the use of typedef
with enum
types, we must first complete the picture of using enum
types. Remember that defining a new type does not require memory allocation. Only when we declare variables of a given type is memory allocated to the variables. In the last two chapters, we used enum
types by first defining them and then separately declaring variables of that type, as follows:
// First define some enumerated types.
enum Face { eOne , eTwo , eThree , ... };
enum Suit { eSpade , eHeart, ... };
// Then declare variables of those types.
enum Face f1 , f2;
enum Suit s1 , s2;
In the preceding code fragment, we have defined two types – enum Face
and enum Suit
. Later, in separate statements, two variables of each type are declared – f1
, f2
, s1
, and s2
.
Another way to achieve the same result...