Logo hi.boatexistence.com

कई विरासत में अस्पष्टता कैसे होती है?

विषयसूची:

कई विरासत में अस्पष्टता कैसे होती है?
कई विरासत में अस्पष्टता कैसे होती है?

वीडियो: कई विरासत में अस्पष्टता कैसे होती है?

वीडियो: कई विरासत में अस्पष्टता कैसे होती है?
वीडियो: Ambiguity Resolution in Inheritance in C++ | C++ Tutorials for Beginners #43 2024, मई
Anonim

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

एकाधिक विरासत में अस्पष्टता क्या है?

अस्पष्टता मुख्य रूप से मल्टीपल इनहेरिटेंस में आती है दो बेस क्लास में एक ही नाम के फंक्शन होते हैं, जबकि दोनों बेस क्लास से व्युत्पन्न क्लास में इस नाम के साथ कोई फंक्शन नहीं होता है। जब हम व्युत्पन्न वर्ग के ऑब्जेक्ट के साथ फ़ंक्शन को कॉल करते हैं तो कंपाइलर यह पता नहीं लगा सकता है कि दोनों में से कौन सा फ़ंक्शन है।

क्या बहु वंशानुक्रम अवधारणा में अस्पष्टता की कोई संभावना है?

वंशानुक्रम में अस्पष्टता को परिभाषित किया जा सकता है जब एक वर्ग दो या दो से अधिक आधार वर्गों के लिए व्युत्पन्न होता है तो संभावना होती है कि आधार वर्गों में एक ही नाम के साथ कार्य हो। तो यह समान नाम कार्यों से चुनने के लिए व्युत्पन्न वर्ग को भ्रमित करेगा।

एकाधिक विरासत में क्या अस्पष्टता उत्पन्न होती है और इसे कैसे हल किया जा सकता है?

एक अस्पष्टता उत्पन्न हो सकती है जब एक ही आधार वर्ग से एक वर्ग के लिए कई पथ मौजूद होते हैं इसका मतलब है कि एक बाल वर्ग में एकल आधार वर्ग से विरासत में मिले सदस्यों के डुप्लिकेट सेट हो सकते हैं। इसे वर्चुअल बेस क्लास का उपयोग करके हल किया जा सकता है। … ऐसे बेस क्लास को वर्चुअल बेस क्लास के रूप में जाना जाता है।

अस्पष्टता वंशानुक्रम क्या है आप उदाहरण के साथ व्याख्या कैसे करते हैं?

उदाहरण के लिए, मान लीजिए कि A और B नाम के दो वर्गों में x नाम का एक सदस्य है, और C नाम का एक वर्ग A और B दोनों से विरासत में मिला है।कक्षा सी से एक्स तक पहुंचने का प्रयास अस्पष्ट होगा। आप स्कोप रेजोल्यूशन (::) ऑपरेटर का उपयोग करकेकिसी सदस्य को उसके वर्ग नाम से अर्हता प्राप्त करके अस्पष्टता का समाधान कर सकते हैं।

सिफारिश की: