Чи безпечно видалити покажчик NULL?
І це гарний стиль кодування?
make_shared(C ++ 11) і make_unique(C ++ 14) програма повинна містити нуль в newіdelete
newабо delete. Класи, призначені для управління ресурсами, де стандартні компоненти не можуть виконати роботу, але, звичайно, можуть робити те, що їм потрібно, але справа в тому, що вони роблять некрасиві речі з керованою ними пам'яттю, а не кодом кінцевого користувача. Отже, зробіть власну бібліотеку / клас помічників для виконання new/ deleteта використовуйте цей клас замість них.
delete. Замість цього використовуйте RAII . Тобто, використовуйтеstd::vector<T> v(100);замістьT* p = new T[100];, використовуйте розумні вказівники, якunique_ptr<T>іshared_ptr<T>які дбають про видалення замість сирих вказівників тощо.