C++ Enumeration (enum): It is a user-defined data type which can be assigned with some limited values. These values are defined by the programmer at the time of declaring the enumerated type. For defining the enumeration “enum” keyword is used. C++ enums can be thought of as classes that have a fixed set of constants. Enumerator types of values are also known as enumerators.
Syntax: enum enumerated-type-name{value1, value2, value3…..valueN};
C++ Enumeration (enum)
Important Points to Remember
- improves type safety
- can be easily used in switch
- can be traversed
- can have fields, constructors and methods may implement many interfaces but cannot extend any class because it internally extends Enum class
Example:
#include<bits/stdc++.h> using namespace std; int main() { // Defining enum Gender enum Gender { Male, Female }; // Creating Gender type variable Gender gender = Male; switch (gender) { case Male: cout << "Gender is Male"; break; case Female: cout << "Gender is Female"; break; default: cout << "Value can be Male or Female"; } return 0; }
Output:
Gender is Male
Example 2
#include<bits/stdc++.h> using namespace std; //Defining enum Year enum year { Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec }; int main() { int i; // Traversing the year enum for (i = Jan; i <= Dec; i++) cout << i << " "; return 0; }
Output:
0 1 2 3 4 5 6 7 8 9 10 11