Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Arrayinhalt kopieren
nepleurepas - Fr 08.05.09 19:23
Titel: Arrayinhalt kopieren
Hallo,
wie kann ich den ein dynamisches array kopieren?
Denn wenn ich zum beispiel mache
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| var a,b: array of integer; begin setlength(a,5); setlength(b,5); a[4]:= 99; b:= a; b[4]:= 77; end; |
dann wird ja a[4] auch zu 77, da man eben nur den zeiger kopiert hat. Aber wie kann ich jetzt eine wirkliche kopie von a anfertigen, die ich verändern kann, ohne dass ich auch a verändert? Ich werde ja wohl nicht mit einer schleife jeden wert einzeln kopieren müssen, oder?
dankeschön für antworten
Narses - Fr 08.05.09 19:24
Moin!
Schau dir mal Copy() an, die Funktion kann auch (dyn.) Arrays kopieren. :idea: ;)
cu
Narses
ffgorcky - Fr 08.05.09 19:28
Also die einfachste Lösung wäre ja so:
Delphi-Quelltext
1: 2:
| for i:=0 to length(a) do a[i]:=b[i]; |
Ich weiß nur leider nicht, ob man so anfangen sollte...
Ich mache es jetzt (leider) immer so.
nepleurepas - Fr 08.05.09 19:33
jau danke euch beiden. "copy" hab ich gesucht.
Die schleifenlösung war mir ja schon bekannt...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!