AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Fehler bei setlength von dynamischen Array
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler bei setlength von dynamischen Array

Ein Thema von schuetzejanett · begonnen am 4. Jan 2007 · letzter Beitrag vom 5. Jan 2007
 
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Fehler bei setlength von dynamischen Array

  Alt 5. Jan 2007, 09:51
Hallo,

in erster Linie solltest du etwas vorsichtiger mit dynamischen Arrays umgehen. Solche Arrays sind eigentlich Zeiger und dein Aufruf von Setlength() verändert diesen Zeiger. Nehmen wir an, deine beim aktuellen Player gespeicherten Points hätten den Zeigerwert $900000. Durch deine Zuweisung an die lokale Variable points zeigt diese auf den gleichen Speicherbereich. Durch deinen Aufruf von Setlength() wird ein vergrößerter Speicherbereich angelegt. Wenn möglich, dann wird einfach der vorhandene Speicherblock vergrößert und das neue Item ist uninitialisiert. Ist nicht genügend Platz, dann wird ein neuer Speicherblock an einer anderen Stelle angefordert, der alte Inhalt dort hinein kopiert und deine Array-Variable aktualisiert, so dass sie anschließend auf $900042 zeigt. Deine Original-Points zeigen weiterhin auf den alten Speicherblock. Musste der alte Speicherblock aufgegeben werden, dann stehen deine Chancen auf eine Exception gut.

Freundliche Grüße
  Mit Zitat antworten Zitat
 


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 06:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz