Forum: Object-Pascal / Delphi-Language
by jbg,
5. Sep 2011
Ich schrieb doch "uminterpretiert". Wenn du also einen Record als Parameter hast, dann kann das nicht funktionieren, da TList.Sort immernoch einen Pointer übergibt, du ihn dann aber als TItem Record interpretierst (also den Pointer als TItem im Speicher typecastest).
Wenn du hingegen die Parameter als "PItem" (PItem = ^TItem) oder beide zu einem "var" Parameter machst (so das Delphi dir das...
Forum: Object-Pascal / Delphi-Language
by jbg,
5. Sep 2011
Nein. TItem(Item1).FileSize.
Mit dem @ erlaubt der Compiler es dir, dass du statt "Pointer" direkt richtigen Typ in den Parametern nutzen kannst, da der Compiler die Typenprüfung weg lässt. Ohne das @ prüft der Compiler alle Typen.