Если вы хотите преобразовать его в стиль C ++ new / delete (см. Другие ответы о продолжении использования malloc / free):
// 1. free(t);
delete t;
// 2. new_node = (Tree *) malloc (sizeof (Tree));
new_node = new Tree;
// 3. Tree * delete(int value, Tree * t)
Tree * delete_tree(int value, Tree* t)
Примечание: для # 3 вам необходимо изменить всех пользователей delete(value, t)
на delete_tree(value, t)
.