Aşağıdaki kod derlenmiyor. Bir hata iletisi alıyorum: hata C2039: 'Asub': 'C' üyesi değilCRTP ve typedef kullanan "Inherited" tipleri
Birisi bunu anlamama yardımcı olabilir mi?
VS2008 & 2010 derleyicisinden çalıştı.
template <class T>
class B
{
typedef int Asub;
public:
void DoSomething(typename T::Asub it)
{
}
};
class C : public B<C>
{
public:
typedef int Asub;
};
class A
{
public:
typedef int Asub;
};
int _tmain(int argc, _TCHAR* argv[])
{
C theThing;
theThing.DoSomething(C::Asub());
return 0;
}
You should * daima p derleme hataları ile satır numaralarını rovide. – abelenky
Örnekte yapısal A nedir? – AlwaysLearning