Bonjour tout le monde,
J'ai un problème j'utilise ce code pour libérer mes pointeurs :
SafeDelete est une fonction extérieure aux classes, et le problème est que si un pointeur à déjà été libéré, avec le code ci-dessus, le programme va quand même dans le if, et plante.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 template <typename B> static void SafeDelete(B & pointer) { if( pointer ) { delete pointer ; pointer = nullptr ; } }
Quelqu'un pourrait il m'aider ?
J'ai également une question : doit on libérer dans le destructeur, les smart pointeurs s'ils ne sont pas encore libérés ?
Partager