Auf Vector einer anderen Klasse zugreifen
-
Ich habe in der Klasse X die Vector
class X { private: vector <KlasseY*> vectorname };
In einer Klasse Z würde ich nun gerne in einer Funktion auf den Vector zugreifen und ihn ein Element zurück setzen.
Klasse_Z::Daten_einlesen() { KlasseY* temp; temp=vectorname.back(); }Ich kriege die Fehlermeldung:
"error: 'vectorname' was not declared in this scope" in der Zeile in der vectorname.back() steht.
Headerdateien der Klassen X und Y sind in Z eingebunden. Was muss ich tun, damit ich in Klasse Z auf den Vector aus Klasse X zugreifen kann?
Danke!
-
Aus welchem X soll denn der Vector genommen werden?
Das hat übrigens nichts mit Vectoren zu tun, sondern deutet auf ein allgemeines Missverständnis hin, was ein Objekt ist und was eine Klasse ist. Die ganzen Pointer finde ich ebenfalls höchst verdächtig. Du solltest dir unbedingt nochmal in einem Lehrbuch ansehen, wie das mit den klassen und Objekten geht. Derzeit scheinst du Klassen als eine Art namespace anzusehen (also ganz ein anderes Konzept, daher funktioniert dein Programm nicht)