Forum: Programmieren allgemein
by alzaimar,
15. Jan 2006
Ach. Einmal durchlaufen ist nutzlos? Wie kommst Du denn zu deinen Behauptungen? Im ComCtrls.Pas ist doch ganz klar definiert, wie der Zugriff auf die items per Index geregelt ist. Kannst Du nicht lesen?
Wenn du Recht hättest, must Du mir ne Kleinigkeit erklären: Wieso ist denn dann die iterative Variante schneller, als die angeblich so optimale Rekursive?
Forum: Programmieren allgemein
by alzaimar,
15. Jan 2006
Wie kommst Du denn darauf? Schau Dir mal den Code in ComCtrls an. Das ist nichts Rekursives. Ich habe Delphi 6.
Beim Hochzählen, wie in meinem Schnipsel, wird einfach GetNext aufgerufen, und das ist sogar schneller als rekursives Durchlaufen (ca. 8%).
Forum: Programmieren allgemein
by alzaimar,
15. Jan 2006
Also ich würde das üblischerweise iterativ machen:
For i:=0 To MyTreeView.Items.Count - 1 do
DoSomethingWith (MyTreeView.Items)