Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   IdHTTP override will nicht so wie ich (https://www.delphipraxis.net/198219-idhttp-override-will-nicht-so-wie-ich.html)

DieDolly 14. Okt 2018 23:42


IdHTTP override will nicht so wie ich
 
Ich erstelle mir mit meiner eigenen von TIdHTTP abgeleitenden Klasse Instanzen von IdHTTP.

Nun würde ich gerne die Funktion Get implementieren und überschreiben. Aber das funktioniert nicht. Nur rerintroduce akzeptiert der Compiler.
Und dann, beim finalen Test, erhalte ich eine Meldung von Indy, dass das gegebene Protokoll unbekannt sei. Was läuft hier falsch? Ohne mein eigenes Get klappt alles wunderbar.

Delphi-Quellcode:
function Get(AURL: string): string; reintroduce;

function THTTPCustom.Get(AURL: string): string;
begin
 inherited;

 // work to do ... ShowMessage(AURL);
end;
Ich glaube ich habs aber ich weiß nicht, ob das richtig ist

Delphi-Quellcode:
function Get(AURL: string{$IFDEF STRING_IS_ANSI}; ADestEncoding: IIdTextEncoding = nil{$ENDIF}): string; overload;

function THTTPCustom.Get(AURL: string {$IFDEF STRING_IS_ANSI}; ADestEncoding: IIdTextEncoding = nil{$ENDIF} ): string;
begin
 Result := inherited Get(AURL); // ruft IdHTTP Get() auf
end;

Schokohase 15. Okt 2018 00:17

AW: IdHTTP override will nicht so wie ich
 
Delphi-Quellcode:
override
geht auch nur, wenn die Methode in den vorherigen Klassen als
Delphi-Quellcode:
virtual
markiert ist.

Ist diese aber nicht, also geht kein Überschreiben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz