Wenn du keine weiteren Anforderungen an dein Objekt hast, dann brauchst du auch keinen speziellen constructor . // bedeutet? was sind "weitere Anforderungen?"
Wenn du in der Klasse noch einige Voreinstellungen vornehmen möchtest.
Delphi-Quellcode:
type
TFoo = class
private
FData : integer;
public
constructor Create;
property Data : integer read FData write FData;
end;
...
constructor TFoo.Create;
begin
inherited;
// wir benötigen diesen constructor nur, weil wir FData mit dem Wert 10 initialisieren wollen
FData := 10;
end;
Ich zitier mich kurz mal selber, dass hatte ich vorhin noch hinzu editiert weil ich mir mit meinem Verständnis nicht sicher bin!
Zitat:
Nur nochmal zum Verständnis:
Wenn ich inherited benutze dann greife ich auf die Funktion der Mutterklasse zu also:
constructor TAddtion.create;
begin
inherited;
end;
jetzt würde ich also wenn ich:
Rechnen:=TAddition.create;
Rechnen.calcit(a,b);
und dies würde bei mir dann in der Mutterklasse landen und somit würde nichts passieren da diese ja in meinem Bsp. leer ist.
Ja, und weil in dem constructor ja nichts passieren soll, dann kann man den auch gleich weglassen
Achso und danke jetzt funzts. Aber warum trat bei constructor create Eintrag nen Fehler auf?
Weil du in der Typ-Deklaration den constructor angegeben hattest, aber diesen nicht ausformuliert hast.
Delphi-Quellcode:
type
TFoo = class
public
constructor Create;
procedure DoSomething;
end;
...
// Das hier fehlte bei dir !!!
constructor TFoo.Create;
begin
inherited;
end;
procedure TFoo.DoSomething;
begin
// some code
end;
Das meinte ich mit "Alles was du in der Typ-Deklaration angibst, musst du auch ausformulieren ...
(sry dass ich euch gerade mit Fragen über Fragen bombardiere aber ich will dass bis Mitternacht durch haben soweit^^)
Hast ja noch eine gute Stunde
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)