Пример 1:
class A;class B;class C;
void A::showcase()
{
C *ptr = new C(*this);
B.input(ptr);
}
Пример 2:
class A;class C;class B;
void A::showcase()
{
B.input(new C(*this));
}
Удаляется ли указатель в первом примере?
Локальная переменная-указатель - удаляется при выходе из методa. Объект на который она указывает - не удаляется.
Локальные переменные имеют автоматическое хранение и не удаляются в принципе. Удалятся могут только переменные с динамическим хранением (то бишь созданные вызовом new) и только при вызове соответствующего delete. Так что если input не использует delete, то ни в первом, ни во втором случае ничего не удаляется.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости