7
बुला मैं इस तरह की कक्षाओं का एक सेट है: हर वर्ग है, जिसमेंसी ++ मैन्युअल रूप से परहेज आधार वर्ग समारोह
if (A::Doit() == 1) { return 1; } else {
:
class A {
public:
int DoIt() {
//common code
}
};
class B : public A {
int DoIt() {
if (A::DoIt() == 1) {
return 1;
}
else {
// do b specific code
}
}
};
class C : public A {
int DoIt() {
if(A::DoIt()==1) {
return 1;
}
else {
// do c specific code
}
}
};
वहाँ एक रास्ता मैं मैन्युअल रूप से इस कोड को डालने से बच सकते हैं है ए से व्युत्पन्न?
सही वाक्यविन्यास 'वर्ग बी: सार्वजनिक ए' है। सी ++ जावा नहीं है। – kennytm
@ जस्टिन ᚅᚔᚈᚄᚒᚔ: ओपी पूछ रहा है कि टाइपिंग से बचने के लिए कैसे करें 'अगर (ए :: डोइट() == 1) वापसी 1; } else {'प्रत्येक उप-वर्ग में, ए को जानने के बिना 'ए :: डोइट()' को कॉल करने के लिए नहीं। लिंक किया गया प्रश्न विरासत से भी संबंधित नहीं है। – kennytm