g++ -fdump-class-hierarchy layout.cpp
एक फ़ाइल layout.cpp.class
बनाता है।
Vtable for Base
Base::_ZTV4Base: 4u entries
0 (int (*)(...))0
8 (int (*)(...))(& _ZTI4Base)
16 __cxa_pure_virtual
24 Base::g
Class Base
size=8 align=8
base size=8 base align=8
Base (0x7ff893479af0) 0 nearly-empty
vptr=((& Base::_ZTV4Base) + 16u)
Vtable for Derived
Derived::_ZTV7Derived: 4u entries
0 (int (*)(...))0
8 (int (*)(...))(& _ZTI7Derived)
16 Derived::f
24 Derived::g
Class Derived
size=8 align=8
base size=8 base align=8
Derived (0x7ff893479d90) 0 nearly-empty
vptr=((& Derived::_ZTV7Derived) + 16u)
Base (0x7ff893479e00) 0 nearly-empty
primary-for Derived (0x7ff893479d90)
'पवित्रता' के f
पांचवीं पंक्ति में परिवर्तन निकाला जा रहा है: layout.cpp.class
की सामग्री निम्न दिखाएगा
16 Base::f
स्रोत
2010-03-31 02:44:31
संबंधित प्रश्न: http://stackoverflow.com/questions/2549618/ –
कौन कहता है कि वर्चुअल टेबल है? मानक उनके बारे में कुछ भी नहीं कहता है और इस तरह वे लोगों की कल्पना का एक चित्र हैं :-) यदि आप संकलक विशिष्ट कार्यान्वयन विवरण चाहते हैं तो आपको उस कंपाइलर का उल्लेख करने की आवश्यकता है जिसका आप उपयोग कर रहे हैं। –