#include <cstdio>
Left : Right : Bottom : Left, * bp = &* lp =* rp =* tp =
(Top::*tgp1)() = &(Top::*tgp2)() = &(Left::*lgp1)() = &(Left::*lgp2)() = &(Left::*lgp3)() = &(Left::*lgp4)() = &(Right::*rgp1)() = &(Right::*rgp2)() = &(Right::*rgp5)() = &(Right::*rgp6)() = &(Bottom::*bgp1)() = &(Bottom::*bgp2)() = &(Bottom::*bgp3)() = &(Bottom::*bgp4)() = &(Bottom::*bgp5)() = &(Bottom::*bgp6)() = &(Bottom::*bgp7)() = &, , , , , , , , , , , , , , , , , , &, &, &, &, &, &, &, &, &, &, &, &, &, &, &, &, &->*->*->*->*->*->*->*

??_9Top@@$BA@AE PROC
eax, DWORD PTR [ecx]
DWORD PTR [eax]
eax, DWORD PTR [ecx]
DWORD PTR [eax+]
eax, DWORD PTR [ecx]
DWORD PTR [eax+]


: (:*tgp1)() = &:get1
DWORD PTR _tgp1$[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR _tgp2$[ebp], OFFSET ??_9Top@@$B3AE
DWORD PTR $T4213[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR $T4213[ebp+],
DWORD PTR $T4213[ebp+],
ecx, DWORD PTR $T4213[ebp]
DWORD PTR _lgp1$[ebp], ecx
edx, DWORD PTR $T4213[ebp+]
DWORD PTR _lgp1$[ebp+], edx
eax, DWORD PTR $T4213[ebp+]
DWORD PTR _lgp1$[ebp+], eax
DWORD PTR $T4214[ebp], OFFSET ??_9Top@@$B3AE
DWORD PTR $T4214[ebp+],
DWORD PTR $T4214[ebp+],
edx, DWORD PTR $T4214[ebp+ DWORD PTR _lgp2$[ebp+ eax, DWORD PTR $T4214[ebp+ DWORD PTR _lgp2$[ebp+
DWORD PTR $T4215[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR $T4215[ebp+],
DWORD PTR $T4215[ebp+],
edx, DWORD PTR $T4215[ebp+ DWORD PTR _lgp3$[ebp+ eax, DWORD PTR $T4215[ebp+ DWORD PTR _lgp3$[ebp+
DWORD PTR $T4216[ebp], OFFSET ??_9Top@@$B3AE
DWORD PTR $T4216[ebp+],
DWORD PTR $T4216[ebp+],
edx, DWORD PTR $T4216[ebp+ DWORD PTR _lgp4$[ebp+ eax, DWORD PTR $T4216[ebp+ DWORD PTR _lgp4$[ebp+
DWORD PTR $T4217[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR $T4217[ebp+],
DWORD PTR $T4217[ebp+],
edx, DWORD PTR $T4217[ebp+ DWORD PTR _rgp1$[ebp+ eax, DWORD PTR $T4217[ebp+ DWORD PTR _rgp1$[ebp+
DWORD PTR $T4218[ebp], OFFSET ??_9Top@@$B3AE
DWORD PTR $T4218[ebp+],
DWORD PTR $T4218[ebp+],
edx, DWORD PTR $T4218[ebp+ DWORD PTR _rgp2$[ebp+ eax, DWORD PTR $T4218[ebp+ DWORD PTR _rgp2$[ebp+
DWORD PTR $T4219[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR $T4219[ebp+],
DWORD PTR $T4219[ebp+],
edx, DWORD PTR $T4219[ebp+ DWORD PTR _rgp5$[ebp+ eax, DWORD PTR $T4219[ebp+ DWORD PTR _rgp5$[ebp+
DWORD PTR $T4220[ebp], OFFSET ??_9Top@@$B3AE
DWORD PTR $T4220[ebp+],
DWORD PTR $T4220[ebp+],
edx, DWORD PTR $T4220[ebp+ DWORD PTR _rgp6$[ebp+ eax, DWORD PTR $T4220[ebp+ DWORD PTR _rgp6$[ebp+
DWORD PTR $T4221[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR $T4221[ebp+],
DWORD PTR $T4221[ebp+],
edx, DWORD PTR $T4221[ebp+ DWORD PTR _bgp1$[ebp+ eax, DWORD PTR $T4221[ebp+ DWORD PTR _bgp1$[ebp+
DWORD PTR $T4222[ebp], OFFSET ??_9Top@@$B3AE
DWORD PTR $T4222[ebp+],
DWORD PTR $T4222[ebp+],
edx, DWORD PTR $T4222[ebp+ DWORD PTR _bgp2$[ebp+ eax, DWORD PTR $T4222[ebp+ DWORD PTR _bgp2$[ebp+
DWORD PTR $T4223[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR $T4223[ebp+],
DWORD PTR $T4223[ebp+],
edx, DWORD PTR $T4223[ebp+ DWORD PTR _bgp3$[ebp+ eax, DWORD PTR $T4223[ebp+ DWORD PTR _bgp3$[ebp+
DWORD PTR $T4224[ebp], OFFSET ??_9Top@@$B3AE
DWORD PTR $T4224[ebp+],
DWORD PTR $T4224[ebp+],
edx, DWORD PTR $T4224[ebp+ DWORD PTR _bgp4$[ebp+ eax, DWORD PTR $T4224[ebp+ DWORD PTR _bgp4$[ebp+
DWORD PTR $T4225[ebp], OFFSET ??_9Top@@$BA@AE
DWORD PTR $T4225[ebp+],
DWORD PTR $T4225[ebp+],
edx, DWORD PTR $T4225[ebp+ DWORD PTR _bgp5$[ebp+ eax, DWORD PTR $T4225[ebp+ DWORD PTR _bgp5$[ebp+
DWORD PTR $T4226[ebp], OFFSET ??_9Top@@$B3AE
ecx, ecx
SHORT $LN7@main
DWORD PTR tv90[ebp],
SHORT $LN8@main
$
DWORD PTR tv90[ebp],
edx, DWORD PTR tv90[ebp]
DWORD PTR $T4226[ebp+], edx
DWORD PTR $T4226[ebp+],
eax, DWORD PTR $T4226[ebp]
DWORD PTR _bgp6$[ebp], eax
ecx, DWORD PTR $T4226[ebp+]
DWORD PTR _bgp6$[ebp+], ecx
edx, DWORD PTR $T4226[ebp+]
DWORD PTR _bgp6$[ebp+], edx
DWORD PTR $T4229[ebp], OFFSET ??_9Bottom@@$B7AE
DWORD PTR $T4229[ebp+],
DWORD PTR $T4229[ebp+],
ecx, DWORD PTR $T4229[ebp+ DWORD PTR _bgp7$[ebp+ edx, DWORD PTR $T4229[ebp+ DWORD PTR _bgp7$[ebp+], edx



: (bp->*bgp1)()
edx, DWORD PTR _bp$[ebp]
eax, DWORD PTR [edx+]
ecx, DWORD PTR _bgp1$[ebp+]
edx, DWORD PTR [eax+ecx]
eax, DWORD PTR _bp$[ebp]
ecx, DWORD PTR [eax+edx+]
ecx, DWORD PTR _bgp1$[ebp+]
DWORD PTR _bgp1$[ebp]
edx, DWORD PTR [ecx+ eax, DWORD PTR _bgp2$[ebp+ ecx, DWORD PTR [edx+ecx+ ecx, DWORD PTR _bgp2$[ebp+
eax, DWORD PTR _bp$[ebp]
ecx, DWORD PTR [eax+]
edx, DWORD PTR _bgp3$[ebp+]
eax, DWORD PTR [ecx+edx]
ecx, DWORD PTR _bp$[ebp]
ecx, DWORD PTR [ecx+eax+]
ecx, DWORD PTR _bgp3$[ebp+]
DWORD PTR _bgp3$[ebp]
eax, DWORD PTR [edx+ ecx, DWORD PTR _bgp4$[ebp+ ecx, DWORD PTR [eax+edx+ ecx, DWORD PTR _bgp4$[ebp+
edx, DWORD PTR [ecx+ eax, DWORD PTR _bgp5$[ebp+ ecx, DWORD PTR [edx+ecx+ ecx, DWORD PTR _bgp5$[ebp+
ecx, DWORD PTR [eax+ edx, DWORD PTR _bgp6$[ebp+ ecx, DWORD PTR [ecx+eax+ ecx, DWORD PTR _bgp6$[ebp+
eax, DWORD PTR [edx+ ecx, DWORD PTR _bgp7$[ebp+ ecx, DWORD PTR [eax+edx+ ecx, DWORD PTR _bgp7$[ebp+ DWORD PTR _bgp7$[ebp]
討論的一樣,包含虛擬繼承的時候,也可以將基類成員成員指針轉換為派生類成員函數指針,如可以bgp1 = lgp1,但是不能講派生類成員函數指針轉換為基類成員函數指針。