"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > C++ कंस्ट्रक्टर के लिए दो प्रतीक क्यों हैं?

C++ कंस्ट्रक्टर के लिए दो प्रतीक क्यों हैं?

2024-11-18 को प्रकाशित
ब्राउज़ करें:927

Why Are There Two Symbols for C   Constructors?

सी कंस्ट्रक्टर्स के लिए दोहरे प्रतीक

आइटेनियम सी एबीआई निर्दिष्ट करता है कि कंस्ट्रक्टरों के उलझे हुए नामों में उनके प्रकार और मापदंडों के बारे में जानकारी शामिल है। तदनुसार, पुस्तकालयों में देखी गई दो कंस्ट्रक्टर प्रविष्टियाँ उनके विभिन्न कंस्ट्रक्टर प्रकारों से उत्पन्न होती हैं:

  • पूर्ण ऑब्जेक्ट कंस्ट्रक्टर (C1): यह कंस्ट्रक्टर किसी भी वर्चुअल बेस क्लास सहित ऑब्जेक्ट को पूरी तरह से आरंभ करता है .
  • बेस ऑब्जेक्ट कंस्ट्रक्टर (सी2): यह कंस्ट्रक्टर डेटा सदस्यों और गैर-वर्चुअल बेस क्लास के साथ ही ऑब्जेक्ट को इनिशियलाइज़ करता है।

दोहरे प्रतीक और एकाधिक परिभाषा त्रुटियाँ

दोहरी प्रविष्टियाँ होने के बावजूद, C1 और C2 प्रत्ययों के उपयोग के कारण परस्पर विरोधी प्रतीक परिभाषाएँ उत्पन्न नहीं होती हैं। एबीआई सुनिश्चित करता है कि उलझे हुए नाम अद्वितीय हैं, इन दो कंस्ट्रक्टर प्रकारों को अलग-अलग तरीके से संभालने के लिए कंपाइलर समर्थन प्रदान करता है।

अतिरिक्त विवरण

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

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3