AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Umgang mit tList

Ein Thema von Fussel · begonnen am 26. Jan 2005 · letzter Beitrag vom 26. Jan 2005
Antwort Antwort
Fussel

Registriert seit: 7. Jan 2005
Ort: Mainz
5 Beiträge
 
#1

Umgang mit tList

  Alt 26. Jan 2005, 15:00
Hallo zusammen!

folgende Situation:
habe eine große Liste in der ich diverse Daten speichere, und zu jedem der Listenelemente brauche ich noch zwei weitere einfache Listen um strings zu speichern. Das sieht dann folgendermaßen aus:


Delphi-Quellcode:
  tEleZeiger = ^tElement; //Liste der Elemente
  tElement = record
              Name :string;
              Gruppe :integer;
              next :tEleZeiger;
              Inhalt :tlist;
              Gruppenliste :tlist;
              Zahl :integer;
             end;
Hatte die beiden Unterlisten Inhalt und Gruppenliste ursprünglich selbst organisiert, was auch funktioniert hat. Da ich sie aber kombinieren ,sortieren, und doppelte Elemente löschen muß wollte ich auf den Typ tList zugreifen, der diese Methoden schon implementiert hat.

Ich erzeuge also einen Zeiger

Delphi-Quellcode:
  var Zeiger:^string;
  new (Zeiger);
und versuche ihn in die liste einzuhängen:

 Neuelement^.Inhalt.add (Zeiger); (Neuelement ist vom Typ tEleZeiger, s.o.) Der compiler akzeptiert es, das Programm aber bricht wegen einer Zugriffsverletzung ab. Kann es sein, daß ch die Liste erst mit .create erzeugen muß? Wie ich es auch anstelle, es kommt nur Murks dabei heraus...



Vielen Dank

Manuel

[edit=Admin]Code in Delphi-Tags gesetzt. Künftig bitte selber machen. Danke. ;-) Mfg, Daniel[/edit]
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#2

Re: Umgang mit tList

  Alt 26. Jan 2005, 15:05
Moin!

Ja, da TList eine Klasse ist musst du diese auch vorher instanziieren und beim entfernen des Elements auch wieder freigeben.

MfG
Muetze1
  Mit Zitat antworten Zitat
Fussel

Registriert seit: 7. Jan 2005
Ort: Mainz
5 Beiträge
 
#3

Re: Umgang mit tList

  Alt 26. Jan 2005, 15:17
Hi Mütze,

wie genau soll ich das anstellen?
Habe es bislang so versucht:

new (NeuElement);
Neuelement.Inhalt.create;

Dann bricht das Programm aber genau an dieser Stelle ab und erzählt mir etwas von wegen EaccessViolation.

komme so nicht weiter...

Manuel
  Mit Zitat antworten Zitat
Nightshade

Registriert seit: 7. Jan 2003
Ort: Menden
192 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Umgang mit tList

  Alt 26. Jan 2005, 15:41
Delphi-Quellcode:
new (NeuElement);
Neuelement.Inhalt := TList.Create;
Christian
Killing for peace is like fucking for virginity

Nightshade
  Mit Zitat antworten Zitat
Fussel

Registriert seit: 7. Jan 2005
Ort: Mainz
5 Beiträge
 
#5

Re: Umgang mit tList

  Alt 26. Jan 2005, 15:46
Nightshade, du bist definitiv mein Held!

Vielen Dank, es klappt

manuel
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#6

Re: Umgang mit tList

  Alt 26. Jan 2005, 21:10
Moin!

Sorry, ich dachte das wäre klar, da du schon explizit nach dem "richtigen" Fehler fragtest und auch gleich die richtige Lösung geschrieben hattest. Es klang für mich nur nach einer Bestätigungsfrage zu deiner Vermutung...

Nächstes mal dann mit Code... ...Hauptsache ist es aber auch verstanden hast warum und wieso es so heissen muss...

MfG
Muetze1
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz