Создает ли компилятор накладные расходы для массивов stati c (время компиляции)? - PullRequest
0 голосов
/ 13 апреля 2020

Я знаю, что когда вы выделяете массив с

int* arr = new int[n];

, компиляция создает накладные расходы, чтобы узнать, сколько существует элементов для освобождения. Но создает ли это накладные расходы для массива c

int arr[4];

Я думаю, что ответ - нет, потому что вы не можете удалить [] такой массив, но мне нужно знать наверняка. Спасибо!

1 Ответ

2 голосов
/ 13 апреля 2020

Вы правы. Дополнительного хранилища не требуется. Освобождение происходит автоматически в случае переменных с автоматическим c сроком хранения. Компилятор имеет всю необходимую информацию во время компиляции, чтобы знать, когда и сколько памяти нужно освободить

...