Bonjour , en 1 phrase mon problème :
J'aimerai passer en paramètre de mon constructeur un pointeur vers une classe dérivée d'une classe abstraite , seulement le compilateur m'envoit royalement balader.

Voici un code d'exemple :

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
 
      class A // Abstract class
      {
           public:
              virtual function_name() = 0;
      };
 
      class B : public A
      {
              ..
      };
      class C
      {
           public:
              C( A*ptr );
      };
main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
 
int main()
{
   B b1;
 
   C c1(&b1);
 
   return 0;
}
Je recois un message d'erreur de ce style :

Merci d'avance pour votre aide

[EDIT] après essais , cela marche sur linux avec le compilateur g++ , j'ai eu l'erreur sur une machine sun ( compilateur CC )