удаляются ли указатели в локальных классах
Я знаю, что локальные переменные существуют только в своей локальной области видимости, после завершения цикла или тп. они уничтожаются, если это не указатель. Но если этим локальным объектом будет класс с указателем внутри, удалится ли этот указатель самостоятельно или мне нужно чистить всё вручную?
class A {
private:
int* ptr;
public:
A(int n) {
ptr = new int[n];
}
};
int main() {
for (int i = 0; i < 5; i++) {
A a(i);
}
return 0;
}