POD vs delete []
От: PowerUserX  
Дата: 24.06.16 08:31
Оценка: +1 -2 :)))
Доброго всем.
Что то вчера навеяло читал мельком на хабре про с++ стат.анализ.

Пишут — этот код некорректный
std::shared_ptr<int> ss(new int[decks * 52]);


Предупреждение PVS-Studio: V554 Incorrect use of shared_ptr. The memory allocated with 'new []' will be cleaned using 'delete'. BlackJack_Server140 table.cpp 471

Надо заменить на
std::shared_ptr<int> ss(new int[decks * 52], std::default_delete<int[]>());


Я просто когда пишу знаю что тут у меня тип POD, и не делаю delete [], все равно то new->malloc, delete[]->free
И главное — я знаю где POD, а где конструктор, т.е. детской ошибки не получу

А что вы думаете — просто поразмышлять

P.S. Да еще при компиляции
delete []
время требует наверное больше?? Хотя утверждать не буду.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.