Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 14:21

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: pointer
BeitragVerfasst: Mi Jul 21, 2004 11:25 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 02, 2003 12:47
Beiträge: 300
Wohnort: Marburg
Ich habe Pointer falls das so heisst auf eine variable in einem record in einer array verlinkt (PVektor:=@Array[2].TVektor).
Aber nu muss ich immer, wenn ich die arraygrösse veränder die adresse neu zuweisen.
Gibt es da nen Weg das zu verhindern?

_________________
Nothing, oh sweet nothing,
today we are doing nothing at all...
http://www.geo-progs.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 21, 2004 13:05 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Das ist normal nicht immer zwingend notwendig. Aber in den meisten Fällen kommst du da nicht drumherum.

Eine andere Möglichkeit wäre, dass du Pointer auf deine Records in einer TList ablegst und dann kannst du auch Pointer auf die einzelnen Records oder auf ein Element des Records benutzen ohne diese ständig aktualisieren zu müssen. Zusätzlich dazu sollte das Erweitern und Verkleinern der Liste schneller gehen. Delphi muss dann nicht mehr alle Daten verschieben sondern nur noch deren Pointer. Was natürlich wesentlich schneller geht.

1. Du musst von deinem Record einen Pointertypen machen. RecordPointerTyp = ^RecordTyp;
2. Ein neues Element erstellst du mittels New und den Pointer legst du dann in die erstellete Liste. New(Variable von RecordPointerType); Dann mit Werten füllen, da momentan nur sinnloses Zeugs in dem Pointer steht.
3. Bevor du ein Element aus der Liste löschst musst du es dann natürlich freigeben. Das geht mittels Dispose. Anschließend kannst du es ohne Probleme aus der Liste löschen.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 2 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.007s | 16 Queries | GZIP : On ]