Здравствуйте, cppguard, Вы писали:
_>>И что вас смущает?
C>Как это работает? Допустим, с инициализацией всё в порядке, если не считать утечки памяти. Но как работает delete в данном случае?
Нет там никакой утечки (ну если new исключение не кинет, но в эмбеддед исключения обычно отключены). Эти поля объявлены, как ссылки. Ссылка это одно и то же, что и указатель, просто разыменовывать по умолчанию не надо. Когда ты пишешь Point &r = *p, ссылке проставляется тот же адрес, что и у p и когда ты потом напишешь delete &r, в delete будет передан тот же адрес, что и был возвращён через new.