ein verschachteltes CArray in einen anderen Dialog mitnehmen



  • Hi.

    Ich habe ein CArray in dem mehrere Informationen stecken. Dieses CArray wird im ersten Dialog erzeugt und soll dann mittels einem zweiten Dialog erweitert/gelöscht/usw. werden. Ich scheitere immer daran die CArray Variable im zweiten Dialog zuzuweisen.
    Ich poste hier mal meinen CArray. In beiden Dialogen habe ich die Variable **CArraymASP::ASP,mASP::ASP nasp;
    **vergeben. Wenn ich jetzt dlg.nasp=nasp schreibe, dann kommt die Fehlermeldung:

    error C2582: 'CArray<struct mASP::ASP,struct mASP::ASP>' : 'Operator =' ist nicht verfuegbar

    struct Aktionlist {
    		CString name;
    		CArray<CString,CString> list;
    	};
    	struct Aktionen {
    		CString aktion;
    		CString vari1;
    		CString vari2;
    		CString vari3;
    	};
    	struct ASP {
    		CString prgname;
    		CString prginfo;
    		CString ztext1;
    		CString ztext2;
    		bool win9x;
    		bool winme;
    		bool win2k;
    		bool winxp;
    		bool winz;
    		CArray<Aktionen,Aktionen> myakt;
    	};
    	CArray<ASP,ASP> asp;
    	CArray<Aktionlist,Aktionlist> aktlist;
    	ASP asptmp;
    	Aktionen actiontmp;
    	Aktionlist actionlisttmp;
    


  • Gibt zwei Möglichkeiten:
    1.) Nutze einen Zeiger, dann musst du nicht zuweisen.
    2.) Baue eine eigene Klasse, dann kannst du den fehlenden Zuweisungsoperator selber schreiben.

    🙂


Anmelden zum Antworten