0

重複の可能性:
C++ の継承とテンプレート - メソッドが非表示になるのはなぜですか?
テンプレートクラスである親クラスの変数を使用できないのはなぜですか?

継承でテンプレートを使用し、子クラスから親クラスのパブリック メンバーにアクセスしようとしています。しかし、これは g++ でコンパイルしていません。

template<class T>
class A
{
public:
A<T>* t;
};

template<class E>
class D:public A<E>
{
public:
        D()
        {
                t = 0;
        }
};

int main()
{
        D<int> d;
        return 0;
}

コンパイル エラー:

g++ Test.C Test.C: In constructor D<E>::D():
      Test.C:27: error: 't' was not declared in this scope
4

0 に答える 0