Problem mit throw



  • Hi!!

    Ich habe eine Exception Klasse mit dem Namen DBCExcept. Wenn ich jetzt aber mit

    throw DBCExcept(1001);
    

    einen Fehler schmeißen will, sagt mir der Compiler:

    warning C4670: 'DBCExcept' : Auf diese Basisklasse kann nicht zugegriffen werden
    error C2700: 'DBCExcept' : throw nicht möglich (/W4 für weitere Informationen)
    

    hier meine Exception Klasse:

    class DBCExcept
    {
    public:
    	DBCExcept();
    	DBCExcept(int iError, CString dbError="");
    	~DBCExcept(void);
    
    private:
    	CString m_sError;
    	CStringArray m_sErrorArray;
    public:
    	CString GetErrorString(void);
    	CStringArray& GetErrorArray(void);
    };
    

    ich vermute einen ganz, ganz blöden fehler aber bis jetzt hab ich ihn nicht gefunden 😞 vor allem hab ich die ganze sache nun nicht das erste mal gemacht 😕

    wäre super, wenn jemand mir weiter helfen kann...



  • Wenn CStringArray das CStringArray aus den MFC ist, dann könnte es daran liegen. Diese Klasse hat IIRC keinen (oder keinen erreichbaren) Copy-CTor.



  • ah danke!

    ich hätte auch lieber string und vector<string> verwendet - ging aber leider nicht mehr, das das projekt schon zu groß ist :p


Anmelden zum Antworten