templates et héritage - C++ - Programmation
Marsh Posté le 13-07-2005 à 17:27:39
ça plante si j'explicite l'héritage public :
template<class A, class B>
class C
{
public :
typedef int D;
D * d;
};
template<class A, class B>
class E : public C<A,B>
{
public:
void something()
{
D * d1 = d;
D * d2 = d1;
d1 = d2;
}
};
Marsh Posté le 13-07-2005 à 17:52:30
pas besoin du typename dans ce cas-là, du mal à y croire d'ailleurs
Marsh Posté le 13-07-2005 à 17:55:09
j'ai fait des tests chez moi et ma version de gcc m'a réclamé un typename
edit :
Citation : g++ (GCC) 3.4.2 (mingw-special) |
Marsh Posté le 13-07-2005 à 21:03:40
theshockwave a écrit : j'ai fait des tests chez moi et ma version de gcc m'a réclamé un typename |
normal, c'est un nom qualifié dependant.
Citation : tu fais un héritage privé |
pourquoi pas ? Il n'y a pas besoin de plus dans son cas.
Code :
|
Marsh Posté le 13-07-2005 à 16:48:37
bonjour,
le code suivant ne compile pas avec gcc :
template<class A, class B>
class C
{
public :
typedef int D;
D * d;
};
template<class A, class B>
class E : C<A,B>
{
public:
void something()
{
d;
}
};
pour gcc la variable d n'est pas déclarée
une idée ?