2013-02-27 27 views
11

मैंने सी # में आभासी तरीकों के बारे में पढ़ा है। सी # में वर्चुअल क्लास नामक कोई अवधारणा है? सी # + में वर्चुअल क्लास सी ++ में वर्चुअल क्लास है?क्या सी # में वर्चुअल क्लास है?

अग्रिम धन्यवाद।

+3

सी ++ में वर्चुअल क्लास का क्या मतलब है? क्या आपका मतलब वर्चुअल अंतर्निहितता या शुद्ध वर्चुअल फ़ंक्शन वाला वर्ग है? – shf301

उत्तर

16

सी # में ऐसी कोई चीज़ नहीं है - और यह वास्तव में आवश्यक नहीं है क्योंकि एकाधिक कार्यान्वयन विरासत समर्थित नहीं है। एक वर्ग सार बनाना वास्तव में केवल इसका मतलब है कि आप उस वर्ग के उदाहरण नहीं बना सकते हैं और वे पूरी तरह लागू नहीं हो सकते हैं (उदाहरण के लिए अमूर्त विधियां हो सकती हैं)।

6

सी # में कोई वर्चुअल क्लासेस नहीं हैं। सार वर्ग एक जैसा नहीं है क्योंकि आप एक अमूर्त वर्ग को तत्काल नहीं कर सकते हैं।

आप इसे sealed पर चिह्नित करके कुछ वर्चुअल चिह्नित करने के विपरीत कर सकते हैं, जो इसे विरासत में रखने से रोकता है।

3

मैं इस पहले अतः पोस्ट के लिंक के साथ विचार होगा: In C++ what is a virtual base class?

दूसरों के रूप में उल्लेख किया है, के बाद से सी # बहु उत्तराधिकार नहीं है, जरूरत एक "आभासी आधार वर्ग" है कि एकाधिक वंशानुक्रम को सीमित करता है करने के लिए नहीं है आवश्यक है, इसलिए यह सी # पर लागू नहीं होता है। केवल सी # में सदस्य वर्चुअल हो सकते हैं।

संबंधित मुद्दे