Registriert seit: 23. Jan 2008
3.685 Beiträge
Delphi 2007 Enterprise
|
Re: TList / dyn. Array - Was steckt dahinter?
27. Mai 2008, 02:51
Jub, Delphi kopiert um. Wäre das nicht so, könnte man Indizierung via Pointerarithmetik auch vergessen, und gelegentlich ist das auch heutzutage noch eine schön performante Alternative. Es mag sein, dass manche andere Sprachen diese Form von Fragmentierung eines dyn. Arrays betreiben, Delphi macht es allerdings definitiv nicht.
Spaßig ist in Delphi auch die mitgelieferte TList. Der Name suggeriert eine Linked-List, aber hinter TList steckt wieder nichts anderes als ein dyn. Array (of Pointer in diesem Fall). TList verwaltet lediglich das Wachsen/Schrumpfen des Arrays automatisch, und bietet ein ähnliches Interface wie eine doppelt verkettete Liste. Das hat seine Vor- aber auch Nachteile. Eine Liste im allgemeinen Sinne ist es jedoch nicht.
Hier gilt also: Im Spezialfall Delphi stimmt die Aussage, dass ein TList auf einem dyn. Array basiert - allgemein ist eigentlich eine Menge von Objekten gemeint, von denen jedes einen Verweis auf seinen Nachfolger (und ggf. Vorgänger) besitzt, und sonst keine Organisation in Arrays o.ä. passiert.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
|