Salut !
J'ai créé une classe template afin de me simplifier certaines opérations.
Mais un probleme se pose :
lors que j'ecris un code similaire a ca :
aucuns problemes puisque dans le dteur de ma classe MyTpl j'execute l'instruction "delete MyObj" (type : T MyObj);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 MyTpl<MyStruct*> *Obj; Obj = new MyTpl<MyStruct*>(); Obj->Add(....); delete Obj;
Cependant, lorsque j'ecris :
j'ai une erreur compilo qui me dit qu'il ne peut effectuer delete sur un int. C'est tout a fait logique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 MyTpl<int> *Obj; Obj = new MyTpl<int>(); Obj->Add(...); delete Obj
Donc je me demande comment differencier un pointeur, sur lequel on peut donc effectuer "delete, et un type statique, non pointeur.
Comment faire ?
merci
Partager