Instead of using #define macros to create a set of values, as in this (deprecated) example:
#define JAN 1#define FEB 2//...#define DEC 12
Enum types are a significantly better choice:
//file enums.henum Months { //a list of enumerators: Jan, Feb, //... Dec };enum Days { Sun, Mon, //... };
There are several benefits to the use of enums.
1. They are safe, because the compiler checks that an enum is always assigned a valid value (one of the enumerators in the enum’s definition and no other). Enum types behave like any other built-in type so you can use them to overload functions:
#include