Sobes.tech
Junior

Co se stane, když zavoláte operátor delete pro nullptr?

sobes.tech AI

Odpověď od AI

Nic se nestane. Volání operátoru delete pro nullptr nezpůsobí chybu ani nedefinované chování. Standard C++ to výslovně garantuje.

int* p = nullptr;
delete p; // Bezpečné, nic se neděje.

int* q = new int(10);
delete q; // Uvolnění alokované paměti.
delete q; // Nedefinované chování (dvojité odstranění).

int* r = new int[5];
delete[] r; // Uvolnění pole.