Sobes.tech
Junior

O que acontece se chamar o operador delete para nullptr?

sobes.tech IA

Resposta da IA

Nada acontecerá. A chamada do operador delete para nullptr não provoca erro nem comportamento indefinido. O padrão C++ garante isso explicitamente.

int* p = nullptr;
delete p; // Seguro, nada acontece.

int* q = new int(10);
delete q; // Limpeza da memória alocada.
delete q; // Comportamento indefinido (eliminação dupla).

int* r = new int[5];
delete[] r; // Limpeza do array.