Einzelnen Beitrag anzeigen

Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Fragen zu OOP und Klassen

  Alt 22. Nov 2007, 14:13
Letzendlich, wie schon von dir erkannt und mehrfach gesagt, ist das inherited im Moment bei einer Klasse, die von TObject abgeleitet ist nicht notwendig.

Du sagst jetzt du kannst dir nicht vorstellen, daß man das Create von TObject verändern wird. Völlig ok deine Meinung. Es bleibt aber immer noch eine Meinung bzw. ein Glaube, es gibt keine Garantie dafür.

Man sollte stets defensiv programmieren und genau in diesem Moment ist das einfügen des inherited ein defensives Verhalten, was dich auf die sichere Seite bringt.


Mal ein kurzes anderes Beispiel zum defensiven Programmieren:


Delphi-Quellcode:
procedure TuWas();
var LMyObj: TEinTyp:
begin
  LMyObj := TEinTyp.Create;
  LMyObj.MachMalDeineAufgabe();
  LMyObj.Free;
end;

das ganze nochmal defensiv:
Delphi-Quellcode:
procedure TuWas();
var LMyObj: TEinTyp:
begin
  LMyObj := TEinTyp.Create;
  try
    LMyObj.MachMalDeineAufgabe();
  finally
    LMyObj.Free;
  end;
end;
Im ersten Fall könnte dein Objekt freigegeben werden, im zweiten Fall wird es garantiert freigegeben.
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat