cs_Daimadoshi
Messages postés45Date d'inscriptionjeudi 27 mars 2003StatutMembreDernière intervention23 août 2007
-
26 oct. 2004 à 15:29
fredcl
Messages postés547Date d'inscriptionmercredi 8 janvier 2003StatutMembreDernière intervention 7 octobre 2007
-
27 oct. 2004 à 11:01
slt tlm, voila je programme une IHM avec wxWidgets (v 2.4.2 + Dev c++ 4.9.9.0) mais je me rend compte qu'une chose me choque dans tt les tuto et exemples que j'ai lu : apres un new il n'y a jamais de delete !
pour une ligne genre de celle ci
m_noteBook = new wxNotebook( m_panel,ID_NOTEBOOK,wxPoint(5,0),wxSize (385,230) );
alors dans un soucis de propreté du code et de mon app j'ai mis les delete de chcun de mes pointeur qui on eu un new mais voila mon application plante lorsque je la ferme (mes delete sont dans le destructeur de la classe deriver de wxFrame )
bien sur aucun delete des page d'un notebook car elle sont gerré par le notebook
et pour finir : il faudrai aussi que je fasse un delete de l'objet de la classe deriver de wxFrame mais où ?j'ai essayer dans le destructeur de la classe deriver de wxApp mais ca plante a la fermeture !
alors comme solution que j'ai testé y a je ne fait pas d'objet dynamique (donc au lieu d'avoir comme attribut des pointeur y a des objets auxquels je fait un create ) mais la je comprend pas pourquoi mais le compilo est pas content
Funto66
Messages postés1267Date d'inscriptionmercredi 1 janvier 2003StatutMembreDernière intervention28 février 20074 26 oct. 2004 à 18:29
Je confirme ce que dit djl; ne t'en fais pas, wxWidgets libère tout seul l'espace alloué. A la fin du programme, c'est à dire quand la fenêtre (wxFrame) principale est détruite, est appelée une méthode wxFrame::Destroy() si je me rappelle bien. Cette méthode fait tous les delete requis, en parcourant les widgets fils (boutons, menus...) et en les supprimant.
Par contre, si tu ne crées pas tes objets via new, effectivement le compilo sera pas content, parce qu'à un endroit dans le code de wxWidgets est fait un delete sur quelque chose qui n'est pas sur le tas...;)
---------------------------------------------------------
Patience et longueur de temps font plus que force ni que rage....
Coucous flingueurs 3D : http://www.freewebs.com/cf3d/
cs_Daimadoshi
Messages postés45Date d'inscriptionjeudi 27 mars 2003StatutMembreDernière intervention23 août 2007 26 oct. 2004 à 16:13
bas justement j'ai lu la doc et la seule fois ou il en parle c'est pour les page d'un controle qui sont gerrer par le control et qui ne nessecite pas de faire de delete le reste ils en parle pas