2015-02-04 3 views
-2

Я знаю, что в C++ удаляйте новый массив с помощью delete []. Что мне интересно, что делать, если я просто удалю без []. Я видел что-то подобное в нашем балансовом коде. И он не разбивает систему. Это тоже правильно?C++ удалить новый массив с помощью delete []

u_char* binBuf2 = new u_char[bitCount + 1]; 
delete binBuf2; 

благодаря

+0

Это неопределенное поведение, это все. –

+0

Также http://stackoverflow.com/questions/1553382/is-delete-equal-to-delete/1553407#1553407 – CoryKramer

+0

это неправильная информация, но она будет работать в любом случае на * некоторых * платформах. Не используйте – sp2danny

ответ

1

Нет, это не правильный метод высвобождения памяти.

Имейте в виду, что из-за чего-то не к краху системы не означает, что это хорошая практика

+0

(или даже правильные, разумные, определенные, воспроизводимые или любые их комбинации) – Quentin

Смежные вопросы