Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
Delphi 12 Athens
|
AW: EMB DCE 12 - class und record zusammen, um Operatoren gemeinsam zu nutzen ?
4. Okt 2024, 18:59
Delphi-Quellcode:
type
TMyClass = class
private
FRefCount: Integer;
public
...
procedure Test;
end;
TRecordForMyClass = record
private
FClass: TMyClass;
public
// Speicherverwaltung des Records
class operator Initialize(out Dest: TRecordForMyClass);
class operator Finalize(var Dest: TRecordForMyClass);
class operator Assign(var Dest: TRecordForMyClass; const [ref] Src: TRecordForMyClass);
// Zuweisungen und Casts (implizit oder explizit) zwischen Record und Klasse oder andersrum
class operator Implicit(a: TMyClass): TRecordForMyClass;
class operator Implicit(a: TRecordForMyClass): TMyClass;
...
// Property&Methoden hier nochmal deklarieren und durchreichen, damit zum Aufruf die Klasse nicht erst rausgeholt werden muß.
procedure Test;
end;
In diesen Record lässt sich die Klasse reingeben und dort Operatoren nutzen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
|