Moin Master,
wenn sich im Konstruktor eine Konstellation ergibt, die die Instanzierung sinnlos machen könntest Du einfach eine
Exception auslösen, so dass die Stelle, die den Konstruktor aufgerufen hat darauf reagieren kann.
Delphi-Quellcode:
type
TMyClass =
class(TObject)
public
constructor Create;
end;
procedure IrgendEine;
var
tmc : TMyClass;
begin
try
tmc := TMyClass.Create;
try
// Tu was mit der Instanz
finally
FreeAnNil(tmc);
end;
except
// Hier eine passende Meldung ausgeben
end;
end;
constructor TMyClass.Create;
begin
inherited;
if FalscheVoraussetzung
then raise Exception.Create('
Fehler');
end;