Bonjour,

voila, je veux faire une liste chainée générique ou plutot polymorphique !!
dans ma classe Element j'ai un membre donné de type void* pour pouvoir stocké n'importe quel type que je veux

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
class Element 
{
  friend class Liste; 
  private:
    Element ( void * unNombre );
    Element ( const Noeud & unNoeud ); 
 
    void * MonNombre; 
    Noeud * suivant; 
};
mais quand je veux ajouté un element de type float dans ma liste grace à une méthode ajout :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
void Liste :: Ajouter( void * leNombre )
{
  Element * punNouveauNoeud = new Element( leNombre );
  if ( prmier  == 0 )
  {
    prmier =  punNouveauNoeud;
  }
  else
  {
    while( Suivant() ){} 
    courant->suivant = punNouveauNoeud;
 
  }
  courant = prmier; 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
uneListe->Ajouter((void*)3.15);
j'ai cette erreur :
cannot convert '3.149999...' from type 'double' to type 'void*'

Et dans le cas d'un type de char, ça s'ajoute mais c'est au niveau d'affichage que je coince !! quoi faire SVP