मैं "सी ++ ऑब्जेक्ट मॉडल के अंदर" पढ़ रहा हूं, यह समझने की कोशिश कर रहा हूं कि vtables के माध्यम से कितने और आभासी विरासत को हासिल किया जाता है। (मैं एकल polymorphism पूरी तरह से अच्छी तरह से समझता हूं)।एकाधिक या आभासी विरासत और vtable (ओं) के तहत कक्षा के मेमोरी लेआउट?
मुझे कठिनाइयों का सामना करना पड़ रहा है कि वर्चुअल विरासत के दौरान या कास्टिंग के दौरान एक विधि की आवश्यकता होने पर वास्तव में क्या किया जाता है, क्योंकि ऑफसेट गणना करने के लिए बहुत सी चीजें होती हैं।
क्या कोई यह समझने में सहायता कर सकता है कि एकाधिक या वर्चुअल विरासत उदाहरण में एकाधिक vtables का उपयोग कैसे किया जाता है? अगर मैं लेआउट और समस्या को समझ सकता हूं, तो शायद मैं इस मुद्दे को बेहतर ढंग से समझ सकता हूं।
जब आप एकाधिक विरासत कहते हैं, तो क्या आपका मतलब है कि लगातार घर्षण (सी से विरासत में से विरासत प्राप्त होती है) या क्या आपका वास्तविक बहु विरासत (सी एक साथ बी विरासत में मिलता है)? – Christophe
शायद यह प्रश्न http://stackoverflow.com/q/11603198/1741542 में सहायता करता है –