Middle
¿Cuáles son los dos tipos de operador delete en C++?
sobes.tech AI
Respuesta de la IA
- Operador
deletenormal: Se usa para liberar la memoria asignada a un solo objeto mediante el operadornew. - Operador
delete[]: Se usa para liberar la memoria asignada a un array de objetos mediante el operadornew[]. Al usardelete[], se llaman a los destructores de todos los elementos del array en orden inverso a su creación.
El uso del tipo incorrecto de operador delete (por ejemplo, delete para un array o delete[] para un solo objeto) conduce a un comportamiento indefinido.
Ejemplo:
// Operador delete normal
int* objeto_unico = new int(10);
// ... uso de objeto_unico
delete objeto_unico;
// Operador delete[] para array
int* array_de_objetos = new int[5];
// ... uso de array_de_objetos
delete[] array_de_objetos;