Comments 6
Осталось это всё автоматизировать. Сделать скрипт/программу, которая будет смотреть код любого приложения, находить и исправлять (если надо) такие места. Подозреваю, подобного будет много.
Хотя… а нет ли такого функционала, например, в PVS Studio? Может, это очередной велосипед, и всё уже продумано раньше другими людьми.
Хотя… а нет ли такого функционала, например, в PVS Studio? Может, это очередной велосипед, и всё уже продумано раньше другими людьми.
Особого смысла нет. Мне просто показался интересным сам случай, когда казалось бы избыточная операция неожиданно дает почти семикратный приост производительности. В более жизненных случаях всё не так печально
забивание нулями займет то самое время, которое потом «сэкономится» более быстрым способом. Подозреваю, что общее время выполнения всей программы не уменьшится. Так что смысла в таком функционале нет.
- Оператор new (как и функция
malloc
, кстати) на самом деле не выделяет память.
Это утверждение ложно в общем случае. Здесь нужно уточнение про POD-типы. - Никогда не делайте
delete
послеnew T[]
. - В примере из плюсов используется только
std::cout
. Использовались бы контейнерыstd::vector
илиstd::array
, тогда и код был бы короче, и ошибок не было бы.
Sign up to leave a comment.
Еще немного о неправильном тестировании