Forum: Object-Pascal / Delphi-Language
Delphi
by Codehunter,
30. Jan 2014
Jepp :-) Über Mischmasch von Debug- und Release-DCUs bin ich früher schon bös auf die Nase gefallen.
Forum: Object-Pascal / Delphi-Language
Delphi
by Codehunter,
29. Jan 2014
So das Problem hat sich auf mysteriöse Weise selbst erledigt. Nachdem ich alle DCUs (auch die von den Komponenten) gelöscht und alle Projekte neu erzeugt hatte, war der Fehler plötzlich verschwunden. Sowas hasse ich immer am meisten, wenn man nicht mal mehr nachvollziehen kann was schuld war.
Das genannte Beispiel von DeddyH war übrigens auch nicht lauffähig und produzierte ebenfalls abstrakte...
Forum: Object-Pascal / Delphi-Language
Delphi
by Codehunter,
29. Jan 2014
Blaue Pünktchen sind noch da nach Shift-F4 (beim begin und beim end der Proc1), XE4 Pro mit allen Updates und Hotfixes. Allerdings für Win64 kompiliert.Ich kenne das von D7 eigentlich noch so, dass sich der Compiler beschwert hat wenn man eine abstrakte Methode einer Basisklasse im Nachfahren nicht implementiert hat. Bei XE4 ist das nicht mehr so.Kann ich nicht, da spaltet mir mein Chef mit dem...
Forum: Object-Pascal / Delphi-Language
Delphi
by Codehunter,
29. Jan 2014
Nein nicht vergessen :-DDas stimmt sogar und müsste die beschriebenen Probleme eigentlich erklären. Also habe ich Proc1 in der Vorfahrklasse testweise nicht abstract gemacht sondern nur noch virtual und die leere Prozedur-implementation dort schon angelegt. Auf ein override der leeren Proc1 mit einer weiteren leeren Proc1 in der Nachfahrklasse habe ich dann mal verzichtet. Ansonsten das selbe...
Forum: Object-Pascal / Delphi-Language
Delphi
by Codehunter,
29. Jan 2014
Hallo!
Ich habe ein kleines Verständnisproblemchen mit abstrakter Vererbung. In einer Vorfahrklasse wird eine virtuelle abstrakte Methode (z.B. "Proc1") eingeführt, aber (logischerweise) noch nicht implementiert. In einer zweiten Methode (z.B. "Proc2") dieser Vorfahrklasse wird die abstrakte Methode aufgerufen.
Eine Nachfahrklasse implementiert jetzt zwar "Proc1", fügt aber keinen Code ein...