Templates et pointeurs

Templates et pointeurs - C++ - Programmation

Marsh Posté le 03-12-2008 à 23:24:11    

Bonsoir,
 
j'ai une classe template assez simple du type

Code :
  1. template <class A, class B> class C {
  2.    C(const D& InfosARecup);
  3.    ~C();
  4.    .....etc....
  5. };


J'essaye de créer une instance de la classe avec un new et bien sûr cela ne marche pas en faisant :

Code :
  1. void   E::UneFonction()
  2. {
  3.    D monInstanceDeD;
  4.    C<A1, B1>  monInstanceDeC(monInstanceDeD);          //Ca marche très bien  
  5.    C<A1, B1>  *monInstanceDeC = new C(monInstanceDeD); //Ca marche pas du tout
  6. }


je n'arrive pas a comprendre ce que je dois implémenter dans ma classe template pour pouvoir la manipuler avec des pointeurs. Meme en surchargeant le new et le -> Cela ne change rien...
 
Si quelqu'un a déjà fait ce genre de manip ou bien a une idée sur la question, je suis preneur.
 
Merci d'avance.

Reply

Marsh Posté le 03-12-2008 à 23:24:11   

Reply

Marsh Posté le 04-12-2008 à 10:31:24    

salut . Rien de particulier a implementer dans la classe .  
 
Par contre "ca marche pas" aide pas vraiment a savoir ce qui se passe. Ca plante a la compil, a l exec ?
 
On ne sait pas ce que tu fais de la ref dans le constructeur. Faut savoir que ton monInstanceDeD va voir son destructeur appele a la fin de E::UneFonction() mis pas  la version pointeur de monInstancedeC.
A vue de nez je dirais que les probs pourraient venir de la.

Reply

Marsh Posté le 04-12-2008 à 11:09:18    

Linbeg a écrit :


Code :
  1. C<A1, B1>  *monInstanceDeC = new C<A1,B1>(monInstanceDeD);




Message édité par mr simon le 04-12-2008 à 11:09:37
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed