Middle
Jaké jsou dva typy operátoru delete v C++?
sobes.tech AI
Odpověď od AI
- Obecný operátor
delete: používá se k uvolnění paměti přidělené pro jeden objekt pomocí operátorunew. - Operátor
delete[]: používá se k uvolnění paměti přidělené pro pole objektů pomocí operátorunew[]. Při použitídelete[]jsou volány destruktory všech prvků pole v opačném pořadí jejich vytvoření.
Použití nesprávného typu operátoru delete (například delete pro pole nebo delete[] pro jednotlivý objekt) vede k nedefinovanému chování.
Příklad:
// Obecný operátor delete
int* jednotlivy_objekt = new int(10);
// ... použití jednotlivy_objekt
delete jednotlivy_objekt;
// delete[] pro pole
int* pole_objektu = new int[5];
// ... použití pole_objektu
delete[] pole_objektu;