- UID
- 2198
注册时间2005-6-29
阅读权限255
最后登录1970-1-1
副坛主
该用户从未签到
|
楼主 |
发表于 2010-1-19 11:25:09
|
显示全部楼层
一切均为对象!
People RetClass()
{
static People thePe;
return thePe;
}
People thePe1(10,20,"Hello,MyName!");
RetClass();
32: RetClass();
00401205 lea eax,[ebp-2Ch]
00401208 push eax // 太NB了
00401209 call @ILT+30(RetClass) (00401023)
0040120E add esp,4
00401211 lea ecx,[ebp-2Ch]
00401214 call @ILT+25(People::~People) (0040101e)
12: People RetClass()
13: {
004010E0 push ebp
004010E1 mov ebp,esp
004010E3 sub esp,44h
004010E6 push ebx
004010E7 push esi
004010E8 push edi
004010E9 lea edi,[ebp-44h]
004010EC mov ecx,11h
004010F1 mov eax,0CCCCCCCCh
004010F6 rep stos dword ptr [edi]
004010F8 mov dword ptr [ebp-4],0
14: static People thePe;
004010FF xor eax,eax
00401101 mov al,[`RetClass'::`2'::$S1 (0042e058)]
00401106 and eax,1
00401109 test eax,eax
0040110B jne RetClass+53h (00401133)
0040110D mov cl,byte ptr [`RetClass'::`2'::$S1 (0042e058)]
00401113 or cl,1
00401116 mov byte ptr [`RetClass'::`2'::$S1 (0042e058)],cl
0040111C mov ecx,offset type_info `RTTI Type Descriptor'+970h (0042e048)
00401121 call @ILT+65(People::People) (00401046)
00401126 push offset $E2 (00401180)
0040112B call atexit (004017a0)
00401130 add esp,4
15: return thePe;
00401133 push offset type_info `RTTI Type Descriptor'+970h (0042e048)
00401138 mov ecx,dword ptr [ebp+8]
0040113B call @ILT+55(People::People) (0040103c)
00401140 mov edx,dword ptr [ebp-4]
00401143 or edx,1
00401146 mov dword ptr [ebp-4],edx
00401149 mov eax,dword ptr [ebp+8]
16: }
0040114C pop edi
0040114D pop esi
0040114E pop ebx
0040114F add esp,44h
00401152 cmp ebp,esp
00401154 call __chkesp (004016b0)
00401159 mov esp,ebp
0040115B pop ebp
0040115C ret |
|