Einzelnen Beitrag anzeigen

Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Nicht deklarierter Bezeichner beim DEC trotz eingeb. Uni

  Alt 28. Jul 2008, 01:13
Zitat von Die Muhkuh:
... das with do Konstrukt zu umzuschreiben...
Das With-Statement ist ja schon ziemlich kritisch zu betrachten, da es einige Unsicherheit bringt, was eigentlich gemeint ist.
Auch bekannt als das "Goto der OOP".
Delphi-Quellcode:
// Beispiel
procedure TForm1.Test;
begin
  with Foo do
    Caption := 'Test';
  // auf welche Caption wird hier zugewiesen, die von Foo oder die von TForm1 ??
  // tja, kommt drauf an, ob Foo.Caption existiert
end;
Wenn man das With-Statement mit zwei Ausdrücken einsetzt, dann multiplizieren sich diese Unsicherheiten.
Bei drei Ausdrücken ist jeder Programmierer überfordert.
Hier die goldenen Regeln aus langjähriger Erfahrung:
* grundsätzlich das With-Statement nur sehr sparsam verwenden
* With nicht verwenden, wenn Unsicherheit über den Scope besteht
* niemals With-Statements schachteln
* niemals With in Verbindung mit zwei oder mehr Ausdrücken verwenden (sieht cool aus, bringt aber nur Verwirrung)
  Mit Zitat antworten Zitat