Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी++ एनम

C++ Enum का उपयोग कैसे करें:एक गाइड

एक एन्यूमरेटेड प्रकार एक उपयोगकर्ता-परिभाषित डेटा प्रकार है जिसे मानों की श्रेणी से एक मान असाइन किया जा सकता है।

Enums अक्सर प्रोग्रामिंग में उपयोग किया जाता है जब एक चर केवल एक मान को विशिष्ट मानों के सेट से बाहर संग्रहीत करने में सक्षम होना चाहिए। उदाहरण के लिए, यदि आप चाहते हैं कि एक वेरिएबल केवल सप्ताह के दिनों को स्टोर करे, तो आप एक एन्यूमरेशन का उपयोग करना चाह सकते हैं।

यह ट्यूटोरियल उदाहरणों के संदर्भ में, C++ में एन्यूमरेशन की मूल बातें, एक एन्यूमरेशन को कैसे परिभाषित करें, और अपने कोड में एन्यूमरेशन का उपयोग कैसे करें, इसका पता लगाएगा। इस ट्यूटोरियल को पढ़ने के अंत तक, आप C++ में एनम का उपयोग करने के विशेषज्ञ होंगे।

C++ Enum

एन्यूमरेटेड प्रकार, जिसे एनम प्रकार के रूप में भी जाना जाता है, का उपयोग एक कस्टम डेटा प्रकार बनाने के लिए किया जाता है जिसमें संभावित मानों की एक निश्चित सीमा होती है। एन्यूमरेशन एक उपयोगकर्ता-परिभाषित डेटा प्रकार है।

सी ++ में एनम को परिभाषित करने के लिए, एनम कीवर्ड का उपयोग किया जाता है। यहाँ C++ में एक एनम को परिभाषित करने के लिए सिंटैक्स दिया गया है:

enum name {
	firstValue, secondValue, thirdValue, fourthValue
};

आइए इस सिंटैक्स को इसके मुख्य घटकों में विभाजित करें:

  • एनम हमारे कोड को एक एन्यूमरेशन बनाने का निर्देश देता है।
  • नाम हमारी गणना को दिया गया नाम है।
  • प्रथम मान , दूसरा मान , तीसरा मान , और चौथा मान हमारे एन्यूमरेशन को असाइन किए गए मान हैं। ये मान कर्ली ब्रैकेट ({}) के एक सेट में संलग्न हैं।

इसके अलावा, आप एक एनम वर्ग के डिफ़ॉल्ट मान को भी बदल सकते हैं। इसलिए, यदि आप चाहते हैं कि किसी मान का अपना नाम हो, तो आप गणना में उसकी प्रविष्टि को एक नया डिफ़ॉल्ट मान निर्दिष्ट करके ऐसा कर सकते हैं। यह वह कोड है जिसका उपयोग हम इस कार्य को पूरा करने के लिए कर सकते हैं:

enum name {
	firstValue = 0,
	secondValue = 1
}

इस सिंटैक्स में, हमारे एनम में दो मान होते हैं। FirstValue मान का मान 0 है, और दूसराValue मान का मान 1 है।

81% प्रतिभागियों ने कहा कि बूटकैंप में भाग लेने के बाद उन्हें अपनी तकनीकी नौकरी की संभावनाओं के बारे में अधिक आत्मविश्वास महसूस हुआ। आज ही एक बूटकैंप से मिलान करें।

बूटकैंप शुरू करने से लेकर अपनी पहली नौकरी खोजने तक, औसत बूटकैंप ग्रेड ने करियर संक्रमण में छह महीने से भी कम समय बिताया।

Enums उपयोगी हैं क्योंकि वे आपको उन संभावित मानों को अधिक स्पष्ट रूप से परिभाषित करने की अनुमति देते हैं जो एक चर धारण कर सकता है। उदाहरण के लिए, यदि आप केवल सप्ताह के दिनों को संग्रहीत करने के लिए एक चर चाहते हैं, तो एक एनम घोषित करने से आपके कोड में यह स्पष्ट हो जाता है कि चर केवल सप्ताह के दिनों को संग्रहीत करने में सक्षम होना चाहिए।

एनम घोषित करें

मान लीजिए कि हम एक एप्लिकेशन बना रहे हैं जो डोनट की दुकान पर कैशियर को प्रत्येक ऑर्डर को रिकॉर्ड करने और डोनट की लागत की गणना करने की अनुमति देता है।

हमारी दुकान केवल सीमित श्रेणी के डोनट्स बेचती है, और इसलिए हम केवल कैशियर को हमारी सूची में डोनट्स के लिए ऑर्डर रिकॉर्ड करने में सक्षम होना चाहते हैं। जिन डोनट्स को हम अपने प्रोग्राम को प्रोसेस करना चाहते हैं वे हैं:रास्पबेरी, स्ट्रॉबेरी, पाउडर, चॉकलेट और दालचीनी।

यह एक आदर्श उदाहरण है जहां एक एनम उपयोगी हो सकता है। हम अपने कार्यक्रम को उपरोक्त स्वादों में आदेशों को संसाधित करने में सक्षम होने के लिए सीमित करना चाहते हैं, और इसलिए एक एनम का उपयोग करना एक अच्छा विचार है। यहाँ वह कोड है जिसका उपयोग हम C++ एनम घोषित करने के लिए कर सकते हैं:

enum flavors {
	Raspberry, Strawberry, Powdered, Chocolate, Cinnamon
}

हमारे कोड में, हम फ्लेवर नामक एक एनम घोषित करते हैं जिसमें पांच संभावित मान होते हैं। इसलिए, जब हम इस एनम से एक वेरिएबल को एक वैल्यू असाइन करने का प्रयास करते हैं, तो वेरिएबल केवल वही वैल्यू स्टोर कर पाएंगे जो हमारे एनम में घोषित किए गए हैं।

यदि हम एक वैरिएबल घोषित करना चाहते हैं जो केवल हमारे फ्लेवर एनम से मान रख सकता है, तो हम इस सिंटैक्स का उपयोग कर सकते हैं:

enum flavors orderFlavor.

वेरिएबल ऑर्डरफ्लेवर जिसे हमने अभी घोषित किया है, केवल फ्लेवर एनम में मूल्यों को स्टोर कर सकता है।

एनम का उपयोग करना

अब जब हमने एक एनम घोषणा की है, तो हम इसे अपने कोड में उपयोग कर सकते हैं। आइए डोनट स्टोर के उदाहरण पर लौटते हैं, यह समझाने के लिए कि हम C++ प्रोग्राम में एनम का उपयोग कैसे कर सकते हैं।

मान लीजिए हम एक प्रोग्राम बना रहे हैं जो हमारे डोनट स्टोर कैशियर को प्रत्येक ऑर्डर रिकॉर्ड करने की अनुमति देता है। कैशियर को अभी-अभी रास्पबेरी डोनट का ऑर्डर मिला है, और हम अपने प्रोग्राम में रास्पबेरी डोनट के लिए ऑर्डर बनाना चाहते हैं। हम इस कोड का उपयोग करके ऐसा कर सकते हैं:

#include <iostream>

using namespace std;

enum flavors {
	Raspberry, Strawberry, Powdered, Chocolate, Cinnamon
}

int main() {
	enum flavors orderFlavor;
	orderFlavor = Raspberry;
	cout << "Donut ordered: 1x " << orderFlavor;
}

हमारा कोड लौटाता है:

Donut ordered: 1x Raspberry

आइए हमारे कोड को तोड़ दें। सबसे पहले, हमने फ्लेवर नामक एक एनम घोषित किया है जो डोनट शॉप पर बेचे जाने वाले फ्लेवर को स्टोर करता है।

फिर, हम ऑर्डर फ्लेवर नामक एक वैरिएबल घोषित करते हैं जो ग्राहक द्वारा ऑर्डर किए गए डोनट के प्रकार का ट्रैक रखता है। यह चर केवल फ्लेवर एनम में मूल्यों को संग्रहीत कर सकता है। कोड की अगली पंक्ति पर, हम ऑर्डरफ्लेवर एनम वैरिएबल को रास्पबेरी मान देते हैं।

इसके बाद, हम Donut ordered: 1x . का प्रिंट आउट लेते हैं कंसोल के लिए, उसके बाद ऑर्डर फ्लेवर चर में संग्रहीत मान।

इस उदाहरण में, आप देख सकते हैं कि एनम का उपयोग करने से हमारे कोड को पढ़ना आसान हो जाता है। एक एनम का उपयोग करके, यह स्पष्ट है कि ऑर्डरफ्लेवर वैरिएबल केवल फ्लेवर एनम में मूल्यों को संग्रहीत कर सकता है। यदि हम एक अधिक जटिल कार्यक्रम पर काम कर रहे थे, तो एनम का उपयोग करने के लाभ और भी स्पष्ट हो जाएंगे, क्योंकि और भी चर होंगे जिनके लिए हमें खाते की आवश्यकता होगी।

डिफ़ॉल्ट Enum मान बदलना

इसके अलावा, हम एनम को एक विशेष डिफ़ॉल्ट मान भी निर्दिष्ट कर सकते हैं। उदाहरण के लिए, मान लीजिए कि हम एक ऐसा प्रोग्राम बनाना चाहते हैं जो किसी विशेष डोनट की कीमत लौटाए। चूंकि एक ग्राहक द्वारा ऑर्डर किए जा सकने वाले डोनट्स की एक सीमित सीमा होती है, इसलिए हम एक एनम का उपयोग करना चाहते हैं।

हम एक एनम बनाने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं जो हमारे डोनट फ्लेवर और उनकी कीमतों दोनों को संग्रहीत करता है:

#include <iostream>

using namespace std;

enum prices {
	Raspberry = 2.00,
Strawberry = 2.00,
Powdered = 1.75,
Chocolate = 1.90,
Cinnamon = 2.20
}

int main() {
	enum prices orderPrice;
	orderPrice = Raspberry;
	cout << "Donut price: $" << orderPrice;
}

हमारा कोड लौटाता है:

Donut price: $2.00

इस उदाहरण में, हमने अपने एनम में प्रत्येक मान को एक डिफ़ॉल्ट मान दिया है।

इसका मतलब यह है कि, जब हम अपने एनम में किसी मान का संदर्भ देते हैं, तो इसका डिफ़ॉल्ट मान मान के नाम के बजाय दिखाई देगा। इसलिए, जब हम चॉकलेट का संदर्भ देते हैं, तो 1.90 वापस कर दिया जाएगा; जब हम दालचीनी का संदर्भ देते हैं, तो 2.20 वापस कर दिया जाएगा।

हमारे मुख्य कार्यक्रम में, हम पहले ऑर्डरप्राइस नामक एक चर घोषित करते हैं जो अपने संभावित मूल्यों को प्रतिबंधित करने के लिए कीमतों की गणना का उपयोग करता है। फिर हम ऑर्डरप्राइस वैरिएबल को हमारे प्राइस एनम में रास्पबेरी से जुड़े मान को असाइन करते हैं।

अगली पंक्ति में, हम स्टेटमेंट प्रिंट करते हैं Donut price: $ कंसोल पर, उसके बाद ऑर्डरप्राइस वेरिएबल में संग्रहीत मूल्य। इस मामले में, ग्राहक ने एक रास्पबेरी डोनट का ऑर्डर दिया, जिसकी कीमत $2.00 है, इसलिए, हमारा कोड Donut price: $2.00 वापस आ गया।

निष्कर्ष

Enum डेटा प्रकार का उपयोग एक प्रकार का डेटा बनाने के लिए किया जाता है जो केवल मानों के एक निश्चित सेट को संग्रहीत कर सकता है। उदाहरण के लिए, एक गणना जो ऋतुओं को संग्रहीत करती है, केवल वसंत, ग्रीष्म, शरद ऋतु और सर्दियों को संग्रहित करेगी। Enums तब उपयोगी होते हैं जब एक चर केवल एक मान को संग्रहीत करने में सक्षम होना चाहिए जो मानों के एक विशिष्ट सेट में मौजूद हो।

इस ट्यूटोरियल में उदाहरणों के संदर्भ में, C++ में एनम कैसे बनाया जाए, एनम का उपयोग कैसे करें, और एनम द्वारा संग्रहीत डिफ़ॉल्ट मानों को कैसे बदलें, इस पर चर्चा की गई। अब आप जानते हैं कि C++ में एनम का उपयोग कैसे शुरू करें!


  1. सी ++ में एक समेकित प्रकार (एनम) को कैसे परिभाषित करें?

    एक एन्यूमरेटेड प्रकार एक वैकल्पिक प्रकार का नाम और शून्य या अधिक पहचानकर्ताओं का एक सेट घोषित करता है जिसे प्रकार के मान के रूप में उपयोग किया जा सकता है। प्रत्येक एन्यूमरेटर एक स्थिरांक है जिसका प्रकार एन्यूमरेशन है। उदाहरण के लिए, यदि आप एक ऐसा एप्लिकेशन बना रहे हैं जिसमें कुछ चर के लिए निश्चित सं

  1. C++ . में पहचानकर्ता

    C++ पहचानकर्ता एक ऐसा नाम है जिसका उपयोग किसी चर, फ़ंक्शन, वर्ग, मॉड्यूल, या किसी अन्य उपयोगकर्ता-परिभाषित आइटम की पहचान करने के लिए किया जाता है। एक पहचानकर्ता अक्षर A से Z या a से z या अंडरस्कोर (_) से शुरू होता है और उसके बाद शून्य या अधिक अक्षर, अंडरस्कोर और अंक (0 से 9) होते हैं। C++ पहचानकर्त

  1. सी # में एनम

    Enum वर्ष, उत्पाद, महीने, मौसम आदि जैसे नामित स्थिरांक के एक सेट को संग्रहीत करने के लिए गणना है। Enum स्थिरांक का डिफ़ॉल्ट मान 0 और वेतन वृद्धि से प्रारंभ होता है। इसमें स्थिरांक का एक निश्चित सेट होता है और इसे आसानी से पार किया जा सकता है। आइए एक उदाहरण देखें। हमने इस तरह से एनम सेट किया है -