![]() |
AW: Aufruf abstrakter Methode führt zu Fehler
Die einzige Schwachstelle des Compilers ist, das er an dieser Stelle nicht warnt:
Delphi-Quellcode:
Und dieser Programmierfehler wird auch hier die Ursache des Problems sein.
procedure TKonkretAbgeleitet.Methode;
begin inherited Methode; // <- keine Warnung WriteLn('Methode wurde implementiert'); end; |
AW: Aufruf abstrakter Methode führt zu Fehler
Hmmm... Tatsache. Das ist wirklich suboptimal.
|
AW: Aufruf abstrakter Methode führt zu Fehler
Das finde ich nicht. Ansonsten müsste ich ja erst nachschauen, ob die Methode in der Elternklasse implementiert wurde. So juckt mich das nicht, mit dem inherited-Aufruf bin ich auf der sicheren Seite.
|
AW: Aufruf abstrakter Methode führt zu Fehler
Könntet ihr bitte zurück zum Thema kommen anstelle eine Grundsatzdiskussion zu führen?
Zitat:
folgendes kann wirklich der Fehler sein:
Delphi-Quellcode:
aber sowas kann man umgehen indem man schreibt:
procedure TKonkretAbgeleitet.Methode;
begin inherited Methode; // <- Fehlermeldung weil explizit eine abstrakte Methode aufgerufen wird WriteLn('Methode wurde implementiert'); end;
Delphi-Quellcode:
Am besten wäre Quelltext von der Stelle an der, der Fehler auftritt.
procedure TKonkretAbgeleitet.Methode;
begin inherited; WriteLn('Methode wurde implementiert'); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz