![]() |
Initialize / Finalize
Ich probiere grad ein bisschen GetMem/Initialize und FreeMem/Finalize aus und wollte gerne mal wissen, ob:
1. der Speicher richtig wieder freigegeben wurde? 2. ich Initialize/Finalize richtig verwendet habe?
Code:
Type
PRec1 = ^TRec1; TRec1 = packed record a: Byte; b: String; end; PRec2 = ^TRec2; TRec2 = packed record b: Integer; c: String; end; procedure TForm1.Button1Click(Sender: TObject); var p1, p2: Pointer; begin GetMem(p1, SizeOf(TRec1) + SizeOf(TRec2)); p2:=Pointer(Integer(p1) + SizeOf(TRec1)); Initialize(PRec1(p1)^.b); Initialize(PRec2(p2)^.c); PRec1(p1)^.b:='Text1'; PRec2(p2)^.c:='Text2'; Finalize(PRec1(p1)^.b); Finalize(PRec2(p2)^.c); FreeMem(p1, SizeOf(TRec1) + SizeOf(TRec2)); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz