enum in C++

eum in c plus plus

Enum is also called as enumeration. An enumeration is a user-defined data type that consists of integral constants. To define an enumeration, the keyword enum is used.

It can be used for days of the week (SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY and SATURDAY) , directions (NORTH, SOUTH, EAST and WEST) etc. The C++ enum constants are static and final implicitly.

Let’s understand it by looking below example.

enum week { sunday, monday, tuesday, wednesday };

Here, the name of the enumeration is weeek and sunday,monday,tuesday are the value type of week.

Example : 1 C++ Enumeration

#include <iostream>  
using namespace std;  
enum week { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday };  
int main()  
{  
    week day;  
    day = Friday;  
    cout << "Day: " << day+1<<endl;  
    return 0;  
}     

Output:

Day: 5

Example: 2 Changing Default Value of Enums

#include <iostream>
using namespace std;

enum seasons { spring = 34, summer = 4, autumn = 9, winter = 32};

int main() {

    seasons s;

    s = summer;
    cout << "Summer = " << s << endl;

    return 0;
}

Output

Day 4

Advantages of enum

  • enum improves type safety
  • enum can be easily used in switch
  • enum can be traversed
  • enum can have fields, constructors and methods
  • enum may implement many interfaces but cannot extend any class because it internally extends Enum class

Disadvantages of enum

  • The enumerators have no scope
  • The enumerators implicitly convert to implicitly to int
  • The enumerators pollute the global namespace
  • The type of the enumerator is not defined. It just has to be big enough to hold the enumerator.
0 0 votes
Article Rating

Do you want to hire us for your Project Work? Then Contact US.
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x