Middle
Millised on kaks delete operaatori tüüpi C++-s?
sobes.tech AI
Vastus AI-lt
- Tavaline
deleteoperaator: kasutatakse ühe objekti mälu vabastamiseks, millele viitabnew-ga eraldatud mälu. delete[]operaator: kasutatakse mälu vabastamiseks, mis on eraldatud objektide massiivi jaoksnew[]-ga. Kasutadesdelete[], kutsutakse kõigi massiivi elementide destruktorid vastupidises järjekorras nende loomisele.
Vigase delete operaatori tüübi kasutamine (näiteks delete massiivi jaoks või delete[] ühe objekti jaoks) viib määramatule käitumisele.
Näide:
// Tavaline delete
int* üks_objekt = new int(10);
// ... objekti kasutamine
delete üks_objekt;
// delete[] massiivile
int* objekti_massiiv = new int[5];
// ... massiivi kasutamine
delete[] objekti_massiiv;