Versteht Dev-Cpp 4 keine Templates?



  • Ich hab mir jetzt mal Dev-Cpp runtergeladen und war erstaunt, als er diesen Fehler fand:

    template <class T> class DLL SmartDecoState
    	{
    	    template <class TT> struct DLL Traits
    	    {
    	        enum{result = 0};
    	    };
    
    	    template <class TT> class DLL Traits<TT*>
    	    {
    	        enum{result = 1};
    	    };
    
    	    enum {result = Traits<T>::result};
    	private:
    	    int* refcount;
    	protected:
    	    T* ptr;
    	public:
    	    inline  SmartDecoState();
    	    inline  SmartDecoState(T* nptr, Cipher* nref); //Hier z.B.
    	    inline  SmartDecoState(const SmartDecoState<T>& param);
    	    virtual void del();
    
    	    inline  void newptr(pointee* nptr, Cipher* nref);
    
    	    SmartDecoState<T>& operator=(const SmartDecoState<T>& param);
    
    	    T* operator->() const;
    	    T& operator *() const;
    	};
    

    Fehler:

    type specifier omitted for parameter

    Scheinbar stört es ihn, dass ich T* schreibe, warum? Ist meines Erachtens Standard ???

    thx



  • Nciht die IDE liegt falsch sondern MingW und cgywin.



  • Dev-Cpp 4 ist uralt und hat demnach wohl auch einen ziemlich alten MinGW drin (ich tipp mal auf eine 2.9x)... koennte sein dass der einfach noch nicht mit templates zurecht kommt...

    Installier doch Dev-Cpp 5, bringt den MinGW 3.3.1 🙂



  • Aso, danke


Log in to reply