Tengo una clase en la que estoy sobrecargando nueva y eliminándola (estas recuperan y devuelven la memoria desde y hacia un grupo de memoria). Lo que me frustra es que la clase sobre la que he sobrecargado todavía tiene su destructor llamado antes de que se llame a la función borrar sobrecargado. ¿Cómo puedo detener esto?Stopping destructor se llama
class Message
{
~Message() { ... }
void* operator new(std::size_t sz) { ... }
void operator delete(void* ptr) { ... }
};
EDIT:
Am cierto al pensar que los miembros de la clase serán destruidos, pero la memoria no serán liberados por los destructores; la función de eliminación posee esta responsabilidad, en cuyo caso puedo evitar que la memoria sea desasignada?
RESULTADO: Penny dejó de lado que la asignación/desasignación de memoria y construcción/destrucción son elementos separados. Ahora tengo destructores vacíos y sobrecargado nuevo/eliminar.
No sé por qué eso es frustrante; C++ es muy lógico en este sentido. Deje un destructor vacío si no lo necesita para hacer nada. –