PS. Looking at the code again, is it OK to create NEW [0,0,0] without first deleting it?
I guess it will NEW all the associated fields for that object, leaving it blank, rather than creating junk in memory?
I guess it will NEW all the associated fields for that object, leaving it blank, rather than creating junk in memory?
No, New() doesn't affect existing objects, it creates new ones. You don't need to delete the object pointed to by [0,0,0] because you've copied the pointer elsewhere - that object will still be used.
I think you need to read up on pointers and objects. Make sure you understand exactly what's going on in the "type foo" example of pointer assignment I typed up for you above.