Sobes.tech
Junior

Mis juhtub, kui kutsute delete operaatorit nullptr jaoks?

sobes.tech AI

Vastus AI-lt

Midagi ei toimu. nullptr jaoks delete operaatori väljakutse ei põhjusta viga ega määratlemata käitumist. Seda tagab selgelt C++ standard.

int* p = nullptr;
delete p; // Turvaline, midagi ei toimu.

int* q = new int(10);
delete q; // Mäluruumi vabastamine.
delete q; // Määratlemata käitumine (korduv kustutamine).

int* r = new int[5];
delete[] r; // Massiivi vabastamine.