C++ Enumerated Types

Introduction to C++ Enumerated Types

एक enumerated type (enumeration) user defined data type होता है जिसके variables को कुछ limited values ही assign की जा सकती है। वे values programmer द्वारा enumerated type को declare करते समय ही define की जाती है।

कई बार एक programmer के रूप में आपको ऐसा variable create करने की आवश्यकता होती है जिसको कुछ पहले से निश्चित values ही assign की जा सकती हो। उदाहरण के लिए आप एक gender variable create करते है। इस variable की Male और Female दो ही सही values हो सकती है।

यदि gender variable को इनके अलावा कोई दूसरी value assign की जाती है तो वह appropriate नहीं होगी। इस situation में आप एक enumerated type declare कर सकते है जिसके variable को सिर्फ Male और Female दो ही values assign की जा सकती हो।

इसके बाद आप किसी normal type की तरह उस type का variable create करते है। फर्क सिर्फ इतना होगा की normal variable को कोई भी value assign की जा सकती है। लेकिन आपके enumerated type के variable को सिर्फ Male और Female values ही assign की जा सकेगी।

जब किसी integer variable को कोई character value assign की जाती है तो compiler error generate करता है। उसी प्रकार यदि enumerated type के variable को कोई दूसरी value assign करने का प्रयास किया जाता है तो compiler द्वारा error generate की जाती है।

Enumerated type की values को enumerators कहा जाता है। Enumerators named constants होते है। यानी technically background में enumerators constants होते है जिन्हें नाम दिया जाता है।

Enumerators को numbers array की ही तरह zero से assign किये जाते है। यानी आपके पहले enumerator को 0, दूसरे enumerator को 1 और उसी प्रकार हर enumerator को एक number अधिक constants assigned होते है।

Enumerated types को switch statement के साथ भी use किया जा सकता है। जैसा की आपको पता है switch statement में case pass किया जाता है। एक enumerated type के variable को आप switch case statement में आसानी से pass कर सकते है।

Syntax of C++ Enumerated Types

C++ में enumerated types को declare करने का general syntax निचे दिया जा रहा है।

enum enumerated-type-name{value1, value2, value3.....valueN};

जैसा की आप ऊपर दिए गए syntax में देख सकते है enumerated type को enum keyword द्वारा declare किया जाता है। इसके बाद enumerated type का नाम लिखा जाता है। इसके बाद curly brackets में वे possible values define की जाती है जिनमें से कोई एक आप उस type के variable को assign करवाना चाहते है।

Enumerated type define करने के बाद उसके variable create किये जाते है। Enumerated type के variable आप दो प्रकार से create कर सकते है। एक तो आप enumerated type को declare करते समय ही curly brackets में values को define करने के बाद और semicolon से statement को end करने से पूर्व उस variable का नाम define कर सकते है।

Enumerated type को declare करते समय ही उसके variable create करने का general syntax निचे दिया जा रहा है।

enum enumerated-type-name{value1, value2,....valueN}variable-name;

इसके अलावा आप separately भी किसी normal variable की तरह enumerated type के variables create कर सकते है।

enumerated-type-name variable-name = value;

किसी normal variable की ही तरह enumerated type के variables को print किया जा सकता है। जब आप ऐसा करते है तो variable का equivalent constant display होता है।

Example of C++ Enumerated Types

C++ में enumerated types के उपयोग को निचे उदाहरण द्वारा समझाया जा रहा है।

#include<iostream>
using namespace std;

int main()
{
   enum Gender{Male,Female};
   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 generate करता है।

Gender is Male