g++ -fdump-class-hierarchy layout.cpp
tạo tệp layout.cpp.class
. Nội dung của layout.cpp.class
sẽ hiển thị như sau:
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)
Loại bỏ các 'thuần khiết' của f
thay đổi dòng thứ năm tới:
16 Base::f
Nguồn
2010-03-31 02:44:31
câu hỏi liên quan: http://stackoverflow.com/questions/2549618/ –
Ai nói có một bảng ảo? Các tiêu chuẩn nói gì về họ và như vậy họ là một figment của trí tưởng tượng của người dân :-) Nếu bạn muốn trình biên dịch cụ thể chi tiết thực hiện bạn cần phải đề cập đến trình biên dịch bạn đang sử dụng. –