I'm making a binary tree class with a lot of pointers to objects. The thing is they aren't allocated using new. I have a node class with a Node* for left and right, and whenever I add a node it just uses uses the rules of a binary search tree to point the pointers to the added node. The thing is when I want to destroy them. I know that the synthesized destructor doesn't get rid of the objects being pointed to, but if they aren't allocated with new should I be worried about the cleanup?
So basically what I'm saying is lets say I add nodes and have a tree of like height 5. Would just destroying the link from the head to all descendants suffice, or does my destructor need to recursively deconstruct the objects?