templates und Implementierungsvererbung

  • templates und Implementierungsvererbung

    Hi, ich versuche gerade ein Objekt einer geerbten inneren Klasse zu erstellen und es will mir nicht gelingen...

    so sieht es aus:

    Quellcode

    1. template <class T> class A {
    2. ........
    3. protected:
    4. struct Node {
    5. ........
    6. }
    7. ........
    8. }


    Quellcode

    1. template <class T> class B : private A<T> {
    2. public:
    3. ........
    4. void add(const T& e) {
    5. typename A<T>::Node *p; //passt
    6. p = new Node; //geht nicht
    7. p = new A<T>::Node(); //geht nicht
    8. }
    9. }


    ich hab noch einige andere Konstellationen ausprobiert, aber p will einfach nicht den heap besiedeln.

    Wie macht man das richtig ??