Hello,
Si dans un bloc de code, délimité par des accolades, je crée un objet à l'aide de new, cet objet est-il automatiquement détruit et son occupation mémore libérée lorsque je sors de ce bloc, ou le delete est-il nécessaire ?
Merci.
Hello,
Si dans un bloc de code, délimité par des accolades, je crée un objet à l'aide de new, cet objet est-il automatiquement détruit et son occupation mémore libérée lorsque je sors de ce bloc, ou le delete est-il nécessaire ?
Merci.
Le delete est toujours nécessaire, sauf si tu passes par des objets spéciaux "pointeurs intelligents" qui contiennent le delete dans leur destructeur.
Exemple: Les std::auto_ptr<> à sémantique de transfert, les boost::shared_ptr<> à comptage de références...
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Utilise l'allocation automatique plutôt que l'allocation dynamique quand c'est possible.
Partager