Templateklasse in Templateklasse



  • Ich habe versucht in einer Templateklasse eine Templateklasse zu erstellen. Doch irgendwie funktioniert es nicht... der Compiler behauptet:
    error C2512: 'cFoo' : no appropriate default constructor available

    Die Klasssen sehen abgekürzt und vereinfacht so aus:

    template<class T>
    class cFoo2 {
              T m_Object;
    
              cFoo<T>::cFoo () {}
    };
    
    template<class T>
    class cFoo1 {
              cFoo2<T> m_Foo2;
    
              void Machwas (T &Objekt) {
              cFoo2<T> *pNeueFoo2 = new cFoo2<T>;
              }
    };
    

    Ich hoffe, dass dieses schon reicht :), ansonsten fragt einfach 😉

    Danke schonmal im vorraus 🙂



  • template<class T>
    class cFoo2 {
              T m_Object;
        public: 
              cFoo2(){}
    };
    
    template<class T>
    class cFoo1 {
              cFoo2<T> m_Foo2;
        public:
              void Machwas (T &Objekt) {
              cFoo2<T> *pNeueFoo2 = new cFoo2<T>;
              }
    };
    

    Vielleicht sieht das besser aus? Oder?



  • Oh, sicher, sorry 😃 🙄
    Das public ist im Originalsource enthalten 😉


Anmelden zum Antworten