Generics mit Dynamischen Strukruren

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Warf
Beiträge: 1909
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Generics mit Dynamischen Strukruren

Beitrag von Warf »

corpsman hat geschrieben:Hallo Warf,

für das hier gezeigte Beispiel hast du vollkommen Recht. Ich habe die eigentliche Implementierung extrem Reduziert, damit es hier diskutiert werden kann und der Fehler leichter Ersichtlich ist.

Wie ihr alle Richtig erkannt habt, handelt es sich bei meiner Implementierung um eine Fifo, meine Implementierung arbeitet dabei auf einem Array, welches einen Ringpuffer realisiert. Das Array muss nur erweitert werden, wenn dieses "Voll" wird. Dann allerdings wächst es Exponentiell => Der Diskutierte Fall tritt sehr selten auf, bzw über die Laufzeit immer seltener. Wenn ich mich recht erinnere machen fast alle LCL Componenten das auch so.


Ein Ringpuffer ist eine gute Idee für eine Queue. Allerdings würde ich den Spaß nicht selbst implementieren, ich würde einfach die Unit gqueue mit der Generischen Klasse TQueue verwenden. Man muss das Rad ja nicht neu erfinden :wink:

Antworten