005F3251 8D4000 lea eax,[eax+$00]uMain.pas.235: begin005F3254 55 push ebp005F3255 8BEC mov ebp,esp005F3257 83C4E0 add esp,-$20005F325A 53 push ebx005F325B 8D45E0 lea eax,[ebp-$20]005F325E 8B1528325F00 mov edx,[$005f3228]005F3264 E89F2DE1FF call @InitializeRecord [red]开始初始化,分配内存,此处取决于结构的大小[/red]005F3269 33C0 xor eax,eax005F326B 55 push ebp005F326C 68CA325F00 push $005f32ca005F3271 64FF30 push dword ptr fs:[eax][red]用SEH结构,保证结构最终调用Finalize来回收内存[/red]005F3274 648920 mov fs:[eax],espuMain.pas.236: tR.AField := 1;005F3277 C745E001000000 mov [ebp-$20],$00000001uMain.pas.237: tR.BField := 'abc';005F327E 8D45E4 lea eax,[ebp-$1c]005F3281 BAE0325F00 mov edx,$005f32e0005F3286 E88920E1FF call @LStrLAsguMain.pas.238: New(PTestRecord);005F328B 8B1528325F00 mov edx,[$005f3228]005F3291 B820000000 mov eax,$00000020005F3296 E8B132E1FF call @NewuMain.pas.239: pR^.AField := 1;005F329B C70301000000 mov [ebx],$00000001uMain.pas.240: pR^.BField := 'abc';005F32A1 8D4304 lea eax,[ebx+$04]005F32A4 BAE0325F00 mov edx,$005f32e0005F32A9 E82220E1FF call @LStrAsg005F32AE 33C0 xor eax,eax005F32B0 5A pop edx005F32B1 59 pop ecx005F32B2 59 pop ecx005F32B3 648910 mov fs:[eax],edx[red]自动收尾回收[/red]005F32B6 68D1325F00 push $005f32d1