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

C++ स्ट्रक्चर कंस्ट्रक्टर्स को समझना:उद्देश्य, सिंटैक्स और उपयोग

<पी> C++ स्ट्रक्चर कंस्ट्रक्टर्स को समझना:उद्देश्य, सिंटैक्स और उपयोग

<पी> कंस्ट्रक्टर्स को अक्सर आवश्यक सदस्य फ़ंक्शन के रूप में संदर्भित किया जाता है जिनका उपयोग क्लास-प्रकार की वस्तुओं और संरचनाओं को आरंभ करने के लिए किया जाता है। अन्य प्रोग्रामिंग भाषाओं की तरह C++ में भी कंस्ट्रक्टर का उपयोग किया जाता है। इसका उपयोग संरचनाओं के लिए अप्रारंभीकृत या अपरिभाषित व्यवहार से बचने के लिए एक विशेष विधि के साथ ऑब्जेक्ट बनाने के लिए किया जाता है।

<पी> यह मार्गदर्शिका इनके बारे में बताएगी:

  • C++ में "स्ट्रक्चर" कंस्ट्रक्टर क्या है?
  • C++ में कंस्ट्रक्टर को परिभाषित करने के लिए मुख्य बिंदु
  • C++ में "स्ट्रक्चर" कंस्ट्रक्टर का सिंटैक्स
  • C++ में "स्ट्रक्चर" कंस्ट्रक्टर का कार्य करना
  • C++ में डिफ़ॉल्ट "स्ट्रक्चर" कंस्ट्रक्टर
  • C++ में पैरामीटरयुक्त "स्ट्रक्चर" कंस्ट्रक्टर
  • C++ में स्ट्रक्चर कंस्ट्रक्टर के लिए पॉइंटर्स कैसे बनाएं?
  • मुख्य पंक्ति
<पी> C++ में, “struct "एक संरचना के रूप में जाना जाता है जो एक संरचना के भीतर एक विशेष फ़ंक्शन सदस्य है। "स्ट्रक्चर" कंस्ट्रक्टर का उपयोग इसके सदस्य वेरिएबल्स को आरंभ करने और उपयोगकर्ताओं को एक ही स्थान पर मिश्रित डेटा प्रकारों से युक्त वेरिएबल्स का एक नया समूह बनाने में सक्षम करने के लिए किया जाता है। सरल शब्दों में, “संरचना कंस्ट्रक्टर एक विशेष विधि है जो जब भी उपयोगकर्ता क्लास के लिए किसी ऑब्जेक्ट की घोषणा करते हैं तो स्वचालित रूप से लागू हो जाती है।

C++ में कंस्ट्रक्टर को परिभाषित करने के लिए मुख्य बिंदु

<पी> C++ में कंस्ट्रक्टर को परिभाषित करने के लिए यहां कुछ मुख्य बिंदु दिए गए हैं:

  • कंस्ट्रक्टर का नाम हमेशा उस क्लास के समान होता है जिसका वह हिस्सा है।
  • यदि कंस्ट्रक्टर उपयोगकर्ताओं द्वारा प्रदान नहीं किया गया है, तो यह एक डिफ़ॉल्ट कंस्ट्रक्टर उत्पन्न करेगा।
  • कंस्ट्रक्टर का उपयोग इनपुट/आउटपुट संचालन के बजाय आरंभीकरण के लिए किया जाता है।
  • ऑपरेटर की मदद से रन टाइम पर मेमोरी का पता लगाने के लिए उपयोग किया जाता है।
  • इसे आभासी और स्थिर घोषित नहीं किया जा सकता.
  • उपयोगकर्ता एक से अधिक कंस्ट्रक्टर घोषित कर सकते हैं (इसे ओवरलोड किया जा सकता है)।

C++ में "स्ट्रक्चर" कंस्ट्रक्टर का सिंटैक्स

<पी> आइए स्ट्रक्चर कंस्ट्रक्टर्स के सामान्य सिंटैक्स की जाँच करें:

<पी> संरचना संरचना-नाम{
d_प्रकार चर1;
d_प्रकार चर2;
........
........

<पी> // पैरामीटर कंस्ट्रक्टर के बिना
संरचना-नाम()
{
//कोड
}

<पी> // पैरामीटर कंस्ट्रक्टर के साथ
संरचना-नाम (d_प्रकार चर1, d_प्रकार चर2,..)
{
//कोड
}

<पी> };

<पी> ऊपर वर्णित सिंटैक्स के अनुसार:

  • संरचना-नाम ” को उपयोगकर्ता के पसंदीदा संरचना नाम से बदल दिया जाएगा और इसे “struct” से परिभाषित किया जाएगा ”कीवर्ड.
  • d_type वेरिएबल1 ” विभिन्न डेटा प्रकारों के साथ चर नाम का प्रतिनिधित्व करता है।
  • फिर, "संरचना-नाम() ” कंस्ट्रक्टर को बिना किसी पैरामीटर के परिभाषित किया गया है।
  • इसके बाद, पैरामीटरयुक्त कंस्ट्रक्टर के सिंटैक्स को भी परिभाषित किया गया है, जैसे कि "Structure-Name(d_typevariable1,…) ” पैरामीटरयुक्त कंस्ट्रक्टर का प्रतिनिधित्व करता है।
<पी> ध्यान दें :"struct" घोषणा C++ में वर्ग की घोषणा के समान है।

C++ में "स्ट्रक्चर" कंस्ट्रक्टर का कार्य करना

<पी> C++ में, उपयोगकर्ता अपनी आवश्यकताओं के अनुसार पैरामीटर के बिना या पैरामीटर के साथ स्ट्रक्चर कंस्ट्रक्टर का उपयोग कर सकते हैं। आइए बेहतर समझ के लिए निम्नलिखित कोड प्रदर्शन देखें।

C++ में डिफ़ॉल्ट "स्ट्रक्चर" कंस्ट्रक्टर बनाएं

<पी> C++ में एक डिफ़ॉल्ट स्ट्रक्चर कंस्ट्रक्टर बनाने के लिए, निम्नलिखित कोड ब्लॉक देखें:

<पी> #शामिल करें
नेमस्पेस एसटीडी का उपयोग करना;

<पी> संरचना लोक{
   स्ट्रिंग नाम;
   तैरने की ऊँचाई;
   पूर्णांक आयु;

<पी> लोक(){
   नाम ="डेविड";
   ऊँचाई =6.7;
   उम्र =26;
   cout<<"नाम:"<<नाम<     }
};

<पी> पूर्णांक मुख्य()
{
   लोक();
}

<पी> ऊपर दिए गए कोड ब्लॉक में:

  • सबसे पहले, हमने “# include जोड़ा हेडर फ़ाइल के रूप में इनपुट/आउटपुट स्ट्रीम लाइब्रेरी।
  • इसके बाद, “नेमस्पेस एसटीडी का उपयोग करना” का उपयोग किया गया मानक पुस्तकालय पहचानकर्ताओं के उपयोग को सक्षम करने के लिए।
  • बाद में, हमने “लोक()” बनाया संरचना में विभिन्न डेटा प्रकारों वाले तीन सदस्य हैं, जैसे "नाम ” स्ट्रिंग के रूप में, “ऊंचाई ” फ्लोट के रूप में, और “आयु ”क्रमशः एक पूर्णांक प्रकार के रूप में।
  • फिर, संरचना के लिए कंस्ट्रक्टर जोड़ा और सदस्यों को संबंधित मानों के साथ आरंभ किया। कंस्ट्रक्टर बॉडी के अंदर, हमने लोक संरचना के डेटा को परिभाषित किया और "काउट" का उपयोग किया कंसोल पर परिणाम दिखाने के लिए कथन।
<पी> आउटपुट

C++ में पैरामीटरयुक्त "स्ट्रक्चर" कंस्ट्रक्टर बनाएं

<पी> C++ में पैरामीटरयुक्त कंस्ट्रक्टर बनाने के लिए, नीचे दिए गए कोड को आज़माएँ:

<पी> #शामिल करें
नेमस्पेस एसटीडी का उपयोग करना;

<पी> संरचना लोक{
   स्ट्रिंग नाम;
   तैरने की ऊँचाई;
   पूर्णांक आयु;

<पी> लोक (स्ट्रिंग एक्स, फ्लोट वाई, इंट जेड) {
   नाम =एक्स;
   ऊँचाई =y;
   आयु =z;
   }
};

<पी> पूर्णांक मुख्य()
{
    लोक एफ1("एज़ेल", 5.1, 23);
    cout<<"नाम:" < }

<पी> यहाँ:

  • हमने पहले चर्चा किए गए उदाहरण को बढ़ाया और वेरिएबल्स को उनके संबंधित डेटा प्रकारों के साथ कंस्ट्रक्टर के पैरामीटर के रूप में पास किया, जैसे कि "x ” एक स्ट्रिंग के रूप में, “ ” एक फ्लोट के रूप में, और “z ” एक पूर्णांक के रूप में.
  • अंत में, "मुख्य() के अंदर ” फ़ंक्शन हमने “f1” नामक ऑब्जेक्ट बनाया है ” और कंस्ट्रक्टर को मूल्यों के साथ आमंत्रित किया। फिर, “काउट का उपयोग किया कंसोल पर चर के परिणामी मानों को मुद्रित करने के लिए कथन।
<पी> आउटपुट <पी> C++ स्ट्रक्चर कंस्ट्रक्टर्स को समझना:उद्देश्य, सिंटैक्स और उपयोग

C++ में स्ट्रक्चर कंस्ट्रक्टर के लिए पॉइंटर्स कैसे बनाएं?

<पी> पॉइंटर एक वेरिएबल है जिसका उपयोग किसी ऑब्जेक्ट के मेमोरी एड्रेस को स्टोर करने के लिए किया जाता है। C++ में, पॉइंटर्स का उपयोग किसी सरणी के तत्वों या अन्य डेटा संरचनाओं और कई अन्य उद्देश्यों पर पुनरावृत्ति के लिए भी किया जाता है। उपयोगकर्ता-परिभाषित प्रकारों जैसे संरचनाओं के लिए पॉइंटर वैरिएबल भी बनाए जाते हैं। आइए संरचनाओं के लिए पॉइंटर बनाने के लिए दिए गए उदाहरण पर एक नज़र डालें:

<पी> #शामिल करें
#शामिल करें
नेमस्पेस एसटीडी का उपयोग करना;

<पी> संरचना लोक
{
  स्ट्रिंग नाम;
  पूर्ण आयु;
};

<पी> पूर्णांक मुख्य(){
      संरचना लोक एफ ={"एलिस", 28};
      संरचना लोक *पीटीआर;
      पीटीआर =&एफ;
      cout <     कोउट <नाम <उम्र <<एंडल;
    वापसी 0;
}

<पी> ऊपर दिए गए कोड में:

  • हमने जोड़ा है और हेडर फ़ाइलें.
  • फिर, “नेमस्पेस एसटीडी का उपयोग करना” निर्दिष्ट किया मानक पुस्तकालय पहचानकर्ताओं के उपयोग को सक्षम करने के लिए।
  • इसके बाद, हमने “लोक()” बनाया संरचना में अलग-अलग डेटा प्रकार वाले दो सदस्य हैं, जैसे "नाम ” एक स्ट्रिंग के रूप में, और “आयु ”क्रमशः एक पूर्णांक प्रकार के रूप में।
  • बाद में, हमने एक सूचक "ptr" परिभाषित किया ” से “लोक ”संरचना.
  • अब, हमने एक पॉइंटर "ptr बनाया है ” “ की ओर इशारा करने के लिए "संरचना चर। नतीजतन, “ptr ” अब संरचना चर “f” का पता सहेजता है ”.
  • अंत में, हमने "-> का उपयोग किया ” ऑपरेटर उस संरचना के लिए एक सूचक का उपयोग करके संरचना के संरचना सदस्यों के डेटा सदस्यों तक पहुंचने के लिए।
<पी> यहां ऊपर वर्णित कोड का आउटपुट है:

<पी> C++ स्ट्रक्चर कंस्ट्रक्टर्स को समझना:उद्देश्य, सिंटैक्स और उपयोग

निचली रेखा

<पी> C++ में, “struct "एक संरचना के रूप में जाना जाता है जो एक संरचना के भीतर एक विशेष सदस्य फ़ंक्शन है जिसका उपयोग इसके सदस्य चर को आरंभ करने के लिए किया जाता है और उपयोगकर्ताओं को एक ही स्थान पर मिश्रित डेटा प्रकारों से युक्त चर का एक नया समूह बनाने में सक्षम बनाता है। उपयोगकर्ता पैरामीटर कंस्ट्रक्टर के साथ या उसके बिना परिभाषित कर सकते हैं। C++ में, उपयोगकर्ता-परिभाषित प्रकारों जैसे संरचनाओं के लिए पॉइंटर वेरिएबल भी बनाए जाते हैं। हमने C++ में स्ट्रक्चर कंस्ट्रक्टर्स के बारे में विस्तृत जानकारी प्रदर्शित की है।

लेखक के बारे में

<पी> C++ स्ट्रक्चर कंस्ट्रक्टर्स को समझना:उद्देश्य, सिंटैक्स और उपयोग

मारिया नाज़

<पी> मेरे पास कंप्यूटर साइंस में मास्टर डिग्री है। मुझे अपने काम, नई तकनीकों की खोज, प्रोग्रामिंग भाषाओं को सीखने का शौक है और मुझे अपना ज्ञान दुनिया के साथ साझा करना पसंद है।


  1. कैसे सीएसएस और जावास्क्रिप्ट के साथ एक बंधनेवाला साइडबार मेनू बनाने के लिए? कैसे सीएसएस और जावास्क्रिप्ट के साथ एक बंधनेवाला साइडबार मेनू बनाने के लिए?

    सीएसएस और जावास्क्रिप्ट का उपयोग करके एक संक्षिप्त साइडबार मेनू बनाने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0&

  1. जावास्क्रिप्ट Array.isArray () जावास्क्रिप्ट Array.isArray ()

    जावास्क्रिप्ट की Array.isArray() विधि का उपयोग यह निर्धारित करने के लिए किया जाता है कि कोई वस्तु एक सरणी है या नहीं। वाक्य रचना इस प्रकार है - Array.isArray(ob) ऊपर, ob पैरामीटर परीक्षण की जाने वाली वस्तु है। आइए अब जावास्क्रिप्ट में Array.isArray() पद्धति को लागू करें - उदाहरण <!DOCTYPE htm

  1. पायथन का उपयोग करके पीडीएफ फाइलों को एक्सेल फाइलों में कैसे बदलें? पायथन का उपयोग करके पीडीएफ फाइलों को एक्सेल फाइलों में कैसे बदलें?

    विभिन्न प्रकार के संचालन को संभालने के लिए पायथन में पुस्तकालयों का एक बड़ा समूह है। इस लेख के माध्यम से, हम देखेंगे कि पीडीएफ फाइल को एक्सेल फाइल में कैसे बदला जाए। पीडीएफ को सीएसवी में बदलने के लिए पाइथन में कई पैकेज उपलब्ध हैं लेकिन हम Tabula-py मॉड्यूल का उपयोग करेंगे। tabula-py का प्रमुख भाग जा