hä?
Ich kann (glaube ich) an einer Hand abzählen, wie oft ich einen Konstruktor mal überladen habe. In anderen Sprachen die (anders als Delphi) kein oder nur sehr eingeschränktes "Konstruktor-Chaining" erlauben hat sich meist eine "init"-Methode eingebürgert die dann alle Felder auf irgendeinen "Anfangswert" setzt.
In Delphi habe ich hingegen immer einen "Grundkonstruktor" wo alles so gesetzt wird, wie es normal sein sollte. Ein "alternativer" Konstruktor ruft dann diesen auf.
Delphi-Quellcode:
TMyClass = class
protected var someField: Integer;
protected var someOtherField: String;
public constructor Create(); overload;
public constructor Create(const stuff: String); overload;
end;
constructor TMyClass.Create();
begin
inherited Create();
self.someField := 42;
end;
constructor TMyClass.Create(const stuff: String);
begin
self.Create();
self.someOtherField := stuff;
end;