EDIT2: Hmm, possibly this doesn't make sense..how come when I "Remove()" da_data2 when using this assignment code it doesn't null out da_data pointer? They pointed to the same place, so doesn't deleting a pointer then free the memory at the same address for both?