delete: Используется для освобождения памяти, выделенной для одного объекта с помощью оператора new.delete[]: Используется для освобождения памяти, выделенной для массива объектов с помощью оператора new[]. При использовании delete[] вызываются деструкторы для всех элементов массива в обратном порядке их создания.Использование неправильного типа оператора delete (например, delete для массива или delete[] для одиночного объекта) приводит к неопределенному поведению.
Пример:
cpp