Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
21. Nov 2009
Tja, da die Basisklasse natürlich vor der abgeleiteten Klasse deklariert ist, kann sie die Deklaration des Nachfahren nicht kennen.
Aber genau dieses wird im Code von Post #3 gezeigt.
- die Basisklasse definiert eine Schnittstelle zu den Daten
- und der Nachfahre gewährt, über diese Schnittstelle, Zugriff auf seine Daten
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
21. Nov 2009
Da und auch in späteren Äußerungen hätte es so ich verstanden, daß in der Basisklasse ein Verhalten steckt und in der Ableitung nur der Speicher geändert werden soll.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
21. Nov 2009
verdecken <> ändern
ermöchte ja nicht im Nachkommen eine gleichnamige Variable haben, sondern auch, daß die Basisklasse diese Variable verwendet.
PS: sowas macht TStrings und TStream
Diese haben keinen eigenen Speicher, sondern nur virtuelle Schnittstellenfunktionen zu den Speichern-/Lesenfunktionen ... die Nachkommen überschreiben diese Funktionen und geben so Zugriff auf ihren...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
21. Nov 2009
Jain (Ja/Nein)
Abstract geht nicht, aber man kann einen Pointer stattdessen definieren und dann diesen auf die gewünschte Struktur zeigen lassen.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
21. Nov 2009
Was einmal deklariert iast, läßt sich nicht mehr ändern.
Denn der Code, welcher theoretisch in de Basisklasse diese Variable nutzt, müßte sich ja auch ändern, wenn du diese Variablendeklaration änderst, was er aber nicht macht bzw. nicht machen kann.
du müßtest also in der Basis nur die Zugriffspunkte definieren
und in der Ableitung diese dann auf deine "neue" Variable umleiten.
TMyClass...