![]() |
hmm,
welche Gefahren drohen mir wenn ich das weg lassen ?
Ich meine nicht dass ich es mir nicht merken würde aber warum das ganze ? Es ist doch total wurscht, der Constructor hat null nachteile durch meine Deklaration. Ich sehe nicht wie man mich bescheissen könnte :( Vor allem macht dieses OVERRIDE mich eher stutzig, ich will das nicht wirklich OVERRIDEN, ich will verschiedene Konstruktoren haben die auch alle aufgerufen werden im Projekt.Da ist mir Delphi noch etwas suspekt aber ich mach es ja auch erst 3 Monate. |
Re: FillRect(Rect) geht und in der Unterprocedure geht es ni
Das hat 2 Gründe.
[edit=Daniel B]List-Tags korrigiert. Mfg, Daniel B[/edit] |
Re: FillRect(Rect) geht und in der Unterprocedure geht es ni
@jbg
zu 1) *gg* zu 2) versteh ich jetzt nicht. Das ist doch das Prob des COmpilers und nicht des Programmierers. Wenn ich Create zuerstmal überschreibe, was anderes mache ich ja nicht mit
Delphi-Quellcode:
Denkt euch das OVERLOAD weg und ersetzt es durch OVERRIDE !!
constructor Create(Aowner:Tcomponent);OVERLOAD;
Wenn ich jetzt aber auch einen anderen aufruf brauche , dann überschreib ich das ganze einfach, denn IMHO sichert im Konstruktor
Delphi-Quellcode:
das
constructor Tfrm_dlg_Arbeitstagekalender.Create(Aowner:Tcomponent);
begin inherited create(Aowner); aufrufart := 0; end;
Delphi-Quellcode:
eh dass der ursprüngliche Konstruktor zum Einsatz kommt !
inherited create(Aowner)
Wo ich allerdings noch nicht klar Delphi verstehe ist dass man wohl Konstruktoren vererben kann oder wie, dass ist natürlich ein Killer denn Sinn macht es nicht. Kein Konstruktor kann seine Childclass konstruieren, das wiederspricht ja den Sinn der Vererbung, denn dann ist die CHildclass ja nix anderes wie eine Instanz der Elternklasse . Meine Meinung aber die Diskussion ist interessant auch wenn Tom nimmer antwortet, ist Wochenende !? |
Re: FillRect(Rect) geht und in der Unterprocedure geht es ni
Zitat:
Ignoriere weiter Deine Meldungen/Warnungen und sei glücklich. Ich kümmer mich drum und bin auch glücklich :roll: Zitat:
|
hmm,
schad.
Denn wo ist denn de Falle bei erner Variable die nie gebracuht wird ?? Ich verstehe es echt nicht. Wenn man vielleicht mit globalen Variablen hantiert kannes zum Killer werden aber wer Globale verwendet gehört eh gesteinigt ! |
Re: hmm,
Zitat:
Zitat:
|
Re: FillRect(Rect) geht und in der Unterprocedure geht es ni
Zitat:
Delphi-Quellcode:
Dafür braucht man virtuelle Konstruktoren. Und das wird von der VCL intern sehr stark genutzt.
function NewComponent(ComponentClass: TComponentClass): TComponent;
begin Result := ComponentClass.Create(nil); end; // ... var C: TComponent; begin C := NewComponent(TMyComponent); try // ... finally C.Free; end; end; [edit=Luckie]Quate-Tags gefixet. Mfg, Luckie[/edit] |
Re: FillRect(Rect) geht und in der Unterprocedure geht es ni
@Tom
wieso versinke ich, ich ignoriere einfach. @jbg das muss ich erst nachlesen, da bin ich ehrlich da komm ich gerade nicht mit. Aber wen ich es sehe dann verstehe ich dein Argument nicht. Ich bin der Gott und nicht der Compiler, also hat der Compiler zu verstehen was ich will und nicht umgekehrt. Ich bin kein meister der virtuellen Funktionen aber ich sehe das so, wenn der Compiler es nicht versteht dann sollte es nicht angeboten werden denn die untergräbt die Konsistenz des gesamten gGebildes ! |
Re: FillRect(Rect) geht und in der Unterprocedure geht es ni
Zitat:
|
Re: FillRect(Rect) geht und in der Unterprocedure geht es ni
falsch, ich habe nicht die verbindung zwischen der Fehlermeldung und der Ursache gesehen, natürlicvh kann man sagen dass ich der Fehler im System bin, bin ich ja auch. Aber das liegt nicht an den anderen Fehlern, denn wie gesagt, es wurden keine weiteren Folgefehler gezeigt, wie auch ?
Wenn ein End fehlt dann kommt das ein ; expected sit und ein Procedure kam, aber wenn ein END; zuviel ist wird dei folgeNachricht zur HDC expected TRect found oder wie auch immer. Das ist IMHO ein himmelweiter unterschied ! Wie auch immer, wenn es dir eh müssig ist warum ahst du dann nicht meine Fragen beantwortet ? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:44 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