Bonsoir,

J'ai une classe A qui est abstraite et qui contient egalement une classe abstraite C.
J'ai une classe B qui herite de A.
Dans la classe B, j'ai une classe C2.

Ce qui donne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
template<class T_info>
class B : public A<T_info>{
  public:
          class C2 : public A<T_info>::C{
            public:
                    C2();
                    //...
           };
           B();
           f(typename A<T_info>::C &);
           //...
};
J'aimerai remplacer la methode f(typename A<T_info>::C &) par ceci:
f(typename A<T_info>::C & = typename B<T_info>::C2())

Mais il m'affiche un message d'erreur:
default argument for parameter of type `A<int>::C&' has type `B<int>::C2'

Pouvez vous me dire où est mon erreur?

Merci d'avence et bonne soirée.