Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
Delphi 12 Athens
|
Re: Vererbungs-Problem: class const überschreiben
24. Mär 2010, 14:39
Klasseninterne Konstanten, Typen oder Variablen werden nicht überschrieben und demnach ist in VBasic das VarType immer varUnknown, da es von der Variable und nicht von der enthaltenen Klasse abhängt.
Da es nun eine unveränderliche Konstante ist, bemerkt Delphi daß (VarType = varUnknown) immer TRUE und
(VarType = varString) immer FALSE ergibt.
Einzige Lösung:
VarType muß als ReadOnly-Property oder als Funktion ausgelegt sein.
Die zugehörige Funktion als Virtual (oder Virtual Abstact) und dann in jeder Ableitung entsprechend überschrieben und mit passendem Result/Funktionsergebnis versehen werden.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
|