So, das mit den Class Helpers: Sagen wir so, es funktoiniert halb.
Delphi-Quellcode:
TTest = class
public
SomeStr: String;
end;
TTestHelper = class helper for TTest
public
procedure SomeInt;
end;
Das funktioniert ohne Probleme und ich kann auch in TTest auf SomeInt zugreifen (und in SomeInt auf SomeStr).
Was aber nicht funktioniert, ist eine Variable zu definieren:
Delphi-Quellcode:
TTest = class
public
SomeStr: String;
end;
TTestHelper = class helper for TTest
public
test: String;
procedure SomeInt;
end;
Da sagt das Delphi dann »Felddefinition nicht erlaubt nach Methoden oder Eigenschaften«
Wenn ich Properties definieren will, dann kommen auch Probleme:
- Beim Zugriff auf SomeStr: »Feld- oder Methodenbezeichner erwartet«
- Zugriff auf eine in TTestHelper definierte Variable ist aus dem Grund schon nicht möglich, weil ich ja gar keine Variablen definieren kann...
Zusätzlich beschwert sich das Delphi beim Zugriff auf diese Property mit »Einer Nur-Lesen Eigenschaft kann kein Wert zugewiesen werden«.
Also irgendwie funktionierts eben nicht ganz
LG