Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
16. Okt 2014
Das Klammersetzen hat hiermit absolut nichts zu tun.
Die "vollständige boolische Auswertung" bedeutet, daß alle Vergleiche geprüft werden, egal ob das Endergebnis bereits fest steht.
Kann man benutzten, wenn alle Funktionsaufrufe in dem "boolischen Ausdruck" ausgeführt werden müssen/sollen.
Bei False and Irgendwas ist mit False das Ergebnis bereits festgelegt und man muß garnicht erst...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
15. Okt 2014
Lieber doppelten Code?
Die vollständige boolische Auswertung ist ein Sonderfall und nicht der Standard.
Wenn man auch für Standardsachen überall Spezialbehandlungen einführt, dann wird die Arbeit schnell umfangreich und unnötig schwierig.
// besser niemals so
if Assigned(obj) and obj.IsActive then begin
obj.MethodeA;
obj.MethodeB;
obj.MethodeC;