Обратите внимание, что вопрос был изменен и больше не соответствует ответам
Я пытаюсь создать память для хранения буфера поплавков (здесь 4 поплавка).
Я выделил память, и все 4 значения в памяти равны нулю.
Цикл, конечно, повторяется 4 раза, но 4-й раз перемещает ptr за пределы памяти, которую я выделил. Поэтому в конце цикла я возвращаю ptr туда, где я выделил память, и использую delete[]
.
Мой вопрос таков: удаляется ли весь 4-поплавковый буфер при вызове delete[]
? (это, очевидно, то, что мне нужно!)
int inFramesToProcess = 4;
float *ptr = new float[inFramesToProcess]();
for(UInt32 i = 0; i < inFramesToProcess; ++i) {
ptr++;
}
ptr -= inFramesToProcess;
delete[] ptr;