Ein weiteres "ungültige Initialisierung der Referenz des Typs" Fehler

Ich haben container in meine Klasse wie folgt aus:

protected:
std::map<const AAA*, std::set<BBB*> > conn;

Beide der folgenden Funktionen getter funktioniert Prima:

std::map<const AAA*, std::set<BBB*> > & getConnectors()       {return connectors;}
std::map<const AAA*, std::set<BBB*> >   getConnectors() const {return connectors;}

aber & und const zusammen, NÖ.Fehler gibt:

std::map<const AAA*, std::set<BBB*> > & getConnectors() const {return connectors;} //error

Fehler:

/home.../Multi.hpp:65:108: error: invalid initialization of reference of type std::map<const AAA*, std::set<BBB*> >&’ from expression of type const std::map<const AAA*, std::set<BBB*> >’
make[2]: *** [CMakeFiles/SimMobility.dir/main.cpp.o] Error 1

warum bekomme ich diese und Wie kann ich es lösen, bitte

danke

  • Lesen Sie die Fehlermeldung!!! In einem const Methode, die this Zeiger und die Mitglieder werden behandelt, als const, können Sie nicht zurück, ein nicht-const Verweis auf eine const Objekt.
InformationsquelleAutor rahman | 2012-07-23
Schreibe einen Kommentar