Objeto C ++ creado con new, destruido con free (); ¿Qué tan malo es esto?

Estoy trabajando para modificar un programa C ++ relativamente grande, donde desafortunadamente no siempre está claro si alguien antes que yo usó la sintaxis C o C ++ (esto está en el departamento de ingeniería eléctrica de una universidad, y nosotros los EE siempre estamos tentados a usar C para todo , y desafortunadamente en este caso, la gente puede salirse con la suya).

Sin embargo, si alguien crea un objeto:

Packet* thePacket = new Packet();

¿Importa si se destruye condelete thePacket; ofree(thePacket); ?

Me doy cuenta de que eliminar llama al destructor mientras que free () no lo hace, pero Packet no tiene un destructor. Estoy teniendo un momento terrible atrapado en un pantano de administración de memoria aquí y creo que este puede ser uno de los muchos problemas.

Respuestas a la pregunta(6)

Su respuesta a la pregunta