Hallo,
zu den Best-Practices gehört: Niemals eine
Exception werfen, wenn die beabsichtigte Funktionalität auch mit anderen Mitteln erreicht werden kann.
Ich greife den Verbesserungsvorschlag von Thomas in Beitrag #5 auf:
Delphi-Quellcode:
function FindImage(ol: TObjectList;
const imgName:
string;
var index: Integer): Boolean;
begin
index := ol.Count;
repeat
Dec(
index);
Result := (
index >= 0)
and (ol[
index]
as TImage).
Name = imgName);
until Result
or (
index < 0);
end;
Die Signatur stimmt jetzt fast mit der allgemeinen
VCL Signatur für Find() überein. Der Container wird zum ersten Parameter, wenn durch die Funktion eine Methode simuliert wird. Eine
Exception wird jetzt nur geworfen, wenn die Liste ein Object enthält, welches dort nicht erwartet wird.
Ist das wirklich nur eine Geschmacksfrage?
Freundliche Grüße