In D2009 wird bei Class (vor Functionen ... siehe erster Code) gemeckert
Zitat:
[DCC Fehler] OperatorInterface.pas(131): E2398 Klassenmethoden in Record-Typen müssen statisch sein
etwas ab D2006/TurboDelphi hätt schon vollkommen gereicht
[add]
das mit dem Free funktioniert natürlich (ist schließlich auch nix Außergewöhnliches),
aber etwas für Create konnt ich nicht finden
Delphi-Quellcode:
Type TMyRecord = Record
Obj: TObject;
Function Create: TMyRecord;
Procedure Free;
End;
Function TMyRecord.Create: TMyRecord;
Begin
Result.Obj := TObject.Create;
End;
Procedure TMyRecord.Free;
Begin
Obj.Free;
Obj := nil;
End;
Procedure TForm1.FormCreate(Sender: TObject);
Var R: TMyRecord;
Begin
R := TMyRecord.Create;
R.Free;
End;
dank der Operatoren geht sowas zumindestens, aber es wäre natürlich etwas Tolles, wenn es auch über den TMyRecord ginge
Delphi-Quellcode:
Procedure TForm1.FormCreate(Sender: TObject);
Var R: TMyRecord;
Begin
R := TObject.Create;
R.Free;
End;
schon schlim, dieser Perfektionist in mir