Если динамический массив создается (через new) внутри какого-то блока кода, например, внутри if, то освобождение памяти через delete нужно производить внутри этого же блока?
if (count != 0)
{
int *masPos = new int[count];
int *masNeg = new int[n - count];
//...
delete [] masPos;
delete [] masNeg;
}
Ответ
Это не имеет принципиального значения.
int *masPos = NULL;
if (something) {
masPos = new int[10];
}
...
if (masPos) {
delete [] massPos;
}
Как правильно заметили выше, нужен только указатель на массив
Комментариев нет:
Отправить комментарий