Delphi-Quellcode:
var
M: TMyClass;
B: TSomeSystemClass;
M := TMyClass.Create;
M.SomeVal := ...; // TMyClass.SetSomeVal
TSomeSystemClass(M).SomeVal := ...; // TSomeSystemClass.SetSomeVal
S := M;
S.SomeVal := ...; // TSomeSystemClass.SetSomeVal
S := TMyClass.Create;
S.SomeVal := ...; // TSomeSystemClass.SetSomeVal
TMyClass(S).SomeVal := ...; // TMyClass.SetSomeVal
Ich sehe das gelassen. Es sollte keinen Grund geben meine Klasse zu Casten.
Und wenn es doch einer tut muss er damit leben, dass die Aufrufe dann genau so
funktionieren, wie von der Oberklasse vorgesehen.