Проверка указателя на null перед удалением в C++ не является обязательной, так как удаление нуль-указателя не имеет эффекта. 13
Проверка входит в алгоритм оператора delete, поэтому нет необходимости явно проверять указатель на равенство нулю. 3
Однако некоторые программисты могут проверять наличие нуль-указателя, чтобы сделать поведение программы более предсказуемым в случае ошибки: доступ к указателю после удаления приведёт к доступу к нулевому указателю, а не к доступу к случайной ячейке памяти. 2