Is "excluir p; p = NULL (nullptr); ”um antipadrão?
Procurando algo no SO, me deparei comessa questã e um dos comentários para a resposta mais votada (o quinto comentário para a resposta mais votada) sugere quedelete p; p = NULL;
é um antipattern. Devo confessar que, por vezes, uso-o frequentemente para emparelhá-lo \ na maioria das vezes com a marcaif (NULL != p)
. O home próprio @ parece sugerir isso (consulte odestroy()
exemplo de função @), então estou realmente confuso sobre o porquê de ser tão temido ser considerado um antipattern. Eu o uso pelos seguintes motivos:
Observe que não estou fazendo a pergunta no contexto do"esta" ponteiro e vamos assumir que não vivemos em um mundo C ++ perfeito e que o código legado existe e precisa ser mantido, portanto, não sugira nenhum tipo de ponteiro inteligente:).