Forum: Object-Pascal / Delphi-Language
Delphi
by choose,
21. Dez 2003
Das kommt immer auf die Anwendung an, ich bin ebenfalls ein Fan von Hashtables und Skiplisten und für suchen in Strukturen natürlich Bäumen...
Bei dem von Luckie skizzierten Anwendungsfall, nämlich einem Ersatz für dynamische Arrays, halte ich aber alles, was über eine Lösung der Art myArray^:= MyTypeCheckedVar; hinausgeht, für maßlos übertrieben.
Forum: Object-Pascal / Delphi-Language
Delphi
by choose,
21. Dez 2003
Die SubList muss ich wohl übersehen haben... Und muss man dieses Exemplar dann nicht wieder freigeben?
Ich wollte nicht behaupten, dass Arrays threadsafe sind, aber sie sind, im Gegensatz zu einem zustandsbehafteten internen Iterator, immerhin treadable. Falls Dich das Thema interessiert, sieh Dir mal das iterator pattern (GoF) an, bei dem beliebig viele externe Iteratoren mit ihren...
Forum: Object-Pascal / Delphi-Language
Delphi
by choose,
21. Dez 2003
Hallo w3seek,
kannst Du mir kurz zeigen, wie Du mit diesem internen Iterator etwas in der Art for i:=0 to High(myArary)-1 do
for a:= i to High(myArray) do
doSth(myArray, myArray);
hinbekommst?
Darüber hinaus sind solche Zustandsbehaftete interne Interatoren problematisch bei Threads...
Forum: Object-Pascal / Delphi-Language
Delphi
by choose,
20. Dez 2003
Hallo Luckie,
der Nachteil bei Lösungen, die generisch mit Pointern arbeiten (zB TList) liegt in der fehlenden Fähigkeit, mit Typen zu arbeiten. Der Nachteil von Verketteten Listen liegt in dem relativ hohen Aufwand der Verwaltung.
Die Folgende Lösung habe ich zu DOS-Zeiten häufig verwendet:
procedure TForm1.Button1Click(Sender: TObject);
type
TMyType = Integer;
TMyArray = array of...