If you remove an object from lista the associated tlink is no longer valid and a new one created if the object is added to another list.
By keeping a variable pointer to the old tlink you keep it alive but, I believe, it doesn't point to anything (other than a memory block).
Local teststring:String="one" Local list1:TList=CreateList() Local list2:TList=CreateList() Local mylink1:TLink=list1.addlast(teststring) Print mylink1.tostring() list1.remove(teststring) Local mylink2:TLink=list2.addlast(teststring) Print mylink2.tostring()
By keeping a variable pointer to the old tlink you keep it alive but, I believe, it doesn't point to anything (other than a memory block).