Multihéritage de template

Multihéritage de template - C++ - Programmation

Marsh Posté le 18-05-2005 à 18:15:07    

Bonjour a tous,
J'aimerais avoir votre avis sur le resultat de la manip suivante :
 
J'ai deux classes A et B.
Je declare et definie un template qui prend pour parametre un type (template <class Type> ).
Une des variables membres de ce template est declaree comme du type passe en parametre.
Je declare une classe C qui herite a la fois de template<A> et de template<B>.
 
Est-ce correct ?
Le compilateur (VC++7) ne sort aucune erreur.
Cependant, comment differencier dans ma classe C, la varible de type A et celle de type B car elle porte alors le meme nom  :D ?
J'ai essaye d'acceder par le meme variable au 2 objets de type A et B et .... ca marche (enfin ca compile) Il faut noter que A et B derive d'une meme classe mais je pense pas que cela soit important.

Reply

Marsh Posté le 18-05-2005 à 18:15:07   

Reply

Marsh Posté le 18-05-2005 à 18:51:58    

voir heritage virtuelle et tu peux prefixé le nom des membres par Mere:: pour levée des ambiguitée de noms, j'en dis pas plus je ne suis pas sur.

Reply

Marsh Posté le 18-05-2005 à 19:30:06    

Salut,
Tu peux poster un code exemple, j'ai un peu de mal à suivre ton explication  :pt1cable:  
C'est pas dit que je puisse t'aider, mais si je comprends c'est mieux :/

Reply

Marsh Posté le 18-05-2005 à 20:38:50    

Code :
  1. class A {//blabla};
  2. class B {//blabla};
  3. template <class Type> class Model
  4. {
  5.    Type *Object;
  6. };
  7. class C : public Model<A> , public Model<B>
  8. {
  9. public:
  10.    C(void);
  11. };
  12. C::C(void)
  13. {
  14.    //On peut faire :
  15.    Model<A>::Object->???
  16.    Model<B>::Object->???
  17. }


 
Voila c'est tout en fait y'a pas de probleme  :D


Message édité par FrozenPaladin le 18-05-2005 à 20:40:14
Reply

Marsh Posté le 18-05-2005 à 23:00:59    

ok

Reply

Sujets relatifs:

Leave a Replay

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