![]() |
Re: 2 Arrays definiert - im Endeffekt aber ein und das selbe
Lass dir einfach mal, so wie ich es gemacht habe, die Adressen ausgeben, und du siehst 100%ig, ob es sich um das gleiche Array handelt oder nicht.
|
Re: 2 Arrays definiert - im Endeffekt aber ein und das selbe
Zitat:
Delphi-Quellcode:
also ohne Indezes wird der Pointer übergeben, und es entsteht das von dir beschriebene Szenario. Schau mal, ob du irgendwo im Code sowas wie oben drin hast. Dann ist alles klaro.
BufferArray := WorldArray;
gruss, dizzy \edit: Nen Plural zum Singular degradiert :) |
Re: 2 Arrays definiert - im Endeffekt aber ein und das selbe
Zitat:
Danke! :dp: Ich kombiniere mal: Wenn ich ein Objekt (Instanz) von ArrayA nach ArrayB kopieren will, spuckt der Destructor beim beenden ein EInvalidPointer aus. Wenn ich auf dem ArrayB aber ein neues Objekt erstelle (TMeineKlasse.Create) funktioniert alles wunderbar. D.h. es wird nur der Pointer übergeben. Demnach muss es der Zuweisung liegen:
Delphi-Quellcode:
Hatte mir sowas schon gedacht. Wie kann ich denn ein Objekt von ArrayA nach ArrayB kopieren? Ich habe da keinen blassen Schimmer, deswegen auch die Zuweisung.
procedure TWorld.BufferCreature(SourceX, SourceY, TargetX, TargetY: Integer;
World: TWorld); begin World.FBufferArray[TargetX][TargetY] := World.FWorldArray[SourceX][SourceY]; end; Hat sich erledigt! Danke an Chewie! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:06 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-2025 by Thomas Breitkreuz