Я часто вижу проверку устаревшего кода для NULL перед удалением указателя, аналогичного,
if (NULL != pSomeObject) 
{
    delete pSomeObject;
    pSomeObject = NULL;
}
Есть ли какая-нибудь причина для проверки указателя NULL перед удалением? Какова причина установки указателя на NULL после?