new кроме базового, то достаточно ли delete просто левый и правый от базового узлы когда освобождаю? Или стоит пройтись по каждому узлу с delete
Если у узла есть деструктор, в котором удаляются "дети", то можно просто delete root;
struct Node { Node* left = nullptr; Node* right = nullptr; ~Node() { if(left) delete left; if(right) delete right; };
все что было выделено с помощью new должно быть удалено с помощью delete.
а между NULL и nullptr есть какая-то разница?
Обсуждают сегодня