Procedure - Array - CopyMemory
Verfasst: 21.01.2008 12:47
Hallo ich habe folgendes Problem:
Wenn ich den Pointer eines Arrays in einer Funktion einer Attribut eines "Objektes" zuweise, kann ich den Speicher nur auf ein anderes Array kopieren wenn dieses vor Funktionsaufruf definiert wurde.
Ist das ein Bug, oder funktioniert das ganze aus einem anderen Grund nicht?
Wenn ich den Pointer eines Arrays in einer Funktion einer Attribut eines "Objektes" zuweise, kann ich den Speicher nur auf ein anderes Array kopieren wenn dieses vor Funktionsaufruf definiert wurde.
Code: Alles auswählen
Structure Test
name.s
*array
EndStructure
Procedure setObj(*obj.Test)
Dim array1.point(3)
For i = 0 To 3
array1(i)\x = i
array1(i)\y = i
Next
*obj\name = "Test"
*obj\array = @array1()
EndProcedure
obj.Test
Dim array2.point(3) ;<- Funktioniert
setObj(@obj)
;Dim array2.point(3) ;<- Funktioniert nicht
CopyMemory(obj\array ,@array2(),SizeOf(point)*4)
Debug array2(3)\x