Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#2

Re: Record komplett oder nur teilwese kopieren?

  Alt 29. Apr 2004, 16:04
Moin!

Ich würde das etwas anders machen:

1. Ich würde einen Record definieren der alles drinne hat (direkt die Strings & Daten).
2. Dann wurde ich einen Pointer auf den Record als Type definieren
3. Dann würde ich den Record immer nur bei der Hauptliste anlegen/löschen
4. Die anderen Listen bekommen immer nur den Pointer des Records - somit greifen alle Listen auf den selben Record zu
5. Wenn der Record aus einer Liste entfernt werden soll (ausgenommen Hauptliste), dann einfach den Pointer aus der Liste löschen
6. Wenn der Record aus der Hauptliste rausfliegt, dann vorher die anderen Listen nach dem Pointer durchsuchen und dort auch löschen
7. Wenn 6. getan wurde, dann den Record aus der Hauptliste entfernen und freigeben.
8. Zum besseren Arbeiten mit den Listen würde ich eine TList nehmen

Ansonsten gibt es zur Verbesserung von 6. noch die Möglichkeit ein dynamisches Array in dem Record zu definieren wo alle Listen eingetragen werden (bis auf die Hauptliste), wo der Eintrag noch hinzugefügt wurde. Damit kannst du 6. einfacher machen und musst nicht mehr suchen, sondern gehst einfach die Liste durch.

Du kannst dir die Arbeit mit den Playlisten und den Automatismus mit dem dynamischen Array vereinfachen, wenn du dir einfach eine eigene Ableitung von TList baust, die das denn gleich mit erledigt. Dann kümmert sich diese Liste auch gleich um die ordentliche Entfernung / Addition des Records und um dessen anlegen/freigeben.

MfG
Muetze1
  Mit Zitat antworten Zitat