Sobes.tech
Middle

C++-də delete operatorunun iki növü hansılardır?

sobes.tech Süni İntellekt

AI-dan cavab

  1. Adi delete operatoru: new ilə ayrılmış tək obyekt üçün yaddaşın azad edilməsi üçün istifadə olunur.
  2. delete[] operatoru: new[] ilə ayrılmış obyektlər massivinin yaddaşını azad etmək üçün istifadə olunur. delete[] istifadə edildikdə, bütün massiv elementlərinin destruktorları yaradılma ardıcıllığının tərsinə çağırılır.

Yanlış delete operatoru növünün istifadəsi (məsələn, massiv üçün delete və ya tək obyekt üçün delete[]) qeyri-müəyyən davranışa səbəb olur.

Nümunə:

// Adi delete operatoru
int* tək_obyekt = new int(10);
// ... tək_obyektin istifadəsi
delete tək_obyekt;

// Array üçün delete[]
int* obyektlər_massiivi = new int[5];
// ... obyektlər_massiivinin istifadəsi
delete[] obyektlər_massiivi;