QT - Clases en Qt

 
Vista:

Clases en Qt

Publicado por Víctor Fernández (1 intervención) el 22/09/2009 23:41:54
Buenas noches. Tengo una duda de clases con Qt. He visto en ejemplos que en clases derivadas, por ejemplo, de QWidget, se declaran punteros, no objetos.

Por supuesto, en el constructor aparecen sentencias new, pero estos punteros no se destruyen posteriormente, es más, alguna veces, si escribo una sentencia delete, el programa se cierra con código de error.

¿Por qué pasa esto? ¿Qué objetos se comportan así?
Muchas gracias por adelantado.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Clases en Qt

Publicado por Jordenys Pérez Feria (3 intervenciones) el 02/10/2009 21:08:55
Hola Victor, lo que pasa es que QT usa un mecanismo para simplificar el manejo de la memoria y el mismo consiste en pasarle a cada objeto cual es su objeto padre, con esto se formaría una jerarquía, la cual permite que cuando se elimine el objeto padre se eliminan todos los objetos que dependen de este, seguramente si tiene un objeto padre y otro hijo y se elimina el padre, cuando intentes hacer delete al objeto hijo se provocará el error que comentas dado que este fue eliminado anteriormente y dicha instancia ya no existe. Como ves, si utilizas este mecanismo que propone el framework QT se simplifica bastante el manejo de memoria y no tienes que preocuparte por hacer delete a cada uno de los objetos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar