#include <stdio.h>

typedef class _B B;// これは出来る
typedef class _A<int> A;// これは出来ない ???

class _B
{
public:
_B( ) { printf( "B desu\n" ); }
};

template <typename Type> class _A
{
public:
_A( ) { printf( "%d\n", sizeof( Type ) ); }
};

//typedef class _A<int> A; // これは出来る

void main( )
{
A a;
}
-
???の行でエラー出るんですが、
これが出来ない理由を知りたいんですが、
分かる方いらっしゃらないでしょうか?