Zitat von
marabu:
Ich greife den Verbesserungsvorschlag von Thomas in Beitrag #5 auf:
Sehr schön. So mache ich es auch. Zumindest von der Signatur der Funktion her.
ich mag Konstrukte wie:
Delphi-Quellcode:
if not list.TryGetValue(key, out result) then
result := nil;
Um es beim kleinsten gemeinsamen Nenner zu lassen wäre es auch möglich TComponent anstatt TImage zu nehmen.
Wobei man sich natürlich fragen muss
warum muss ich überhaupt über den Namen des Elementes darauf zugreifen.
Und wenn man es muss (warum auch immer), wie oft und wie zeitnah muss das passieren.
Wenn ersteres mit "ständig" und das andere mit "sackschnell" beantwortet wird, könnte man sich überlegen, ob nicht eine Suche
innerhalb der Liste (als Methode) sinnvoller wäre.
Mit Hilfe einer Hashliste, die von der eigentlichen Liste verwaltet wird.
Ich kann aber nur nochmal wiederholen, dass der Zugriff über einen Namen meist einen fundamentalen Fehler im Design anzeigt.
Zitat:
Ist das wirklich nur eine Geschmacksfrage?
Denke ich nicht.
Aber wenn der Code eine ähnliche Herangehensweise wie die vorherrschenden Containerklassen verfolgt, ist das ja auch nicht falsch. @Thomas' Index als Rückgabewert