Einzelnen Beitrag anzeigen

Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#1

Dispose mit untypisiertem Pointer

  Alt 13. Sep 2012, 22:49
Delphi-Version: 2006
Hallo, ich stehe gerade ein bisschen auf dem Schlauch:

Delphi-Quellcode:
type

PRecord = ^TRecord;
TRecord = record
  { was auch immer }
end;

var
  TypedPointer: PRecord;
  UntypedPointer: Pointer;
begin
  New(TypedPointer);
  UntypedPointer := TypedPointer;
  Dispose(UntypedPointer);
end;
Kann ich sowas machen, oder gibt das ein MemoryLeak? Kompilieren tut es zumindest, aber woher weiß Dispose die Größe des Records? Merkt der Speichermanager sich die? Wenn ja, kann ich mich darauf verlassen, dass das unter allen Versionen funktioniert?

Danke im Voraus
  Mit Zitat antworten Zitat