vector als Rueckgabewert??
-
schoenen abend alle miteinander!!
ich habe da zwei klassen implementiert und die ein braucht von dedr anderen, aus einer funktion heraus einen vector zurueck. sieht irgendwie so aus:
1.klasse
private: vector< vector<double> > Matrix; vector<double> Werte; void function(int zeile) { RueckgabeWerteausMatrix = Matrix[zeile]; return RuechgabeWerteausMatrix; }
2.klasse
hier soll dann der Wert aus der Matrix in der 1.klasse in einer
funktion benutzt werden.void 2.klasse::funktion(zeile) { vector<double> Werte = 1.Klasse.funktion(zeile); }
hat da einer nee peilung wie datt gehen koennte,
schonmal danke
frank
-
Hallo,
keine Ahnung was Du da im Detail vor hast, aber einen vector
als Rückgabewert ist nicht soooo schwer. Z. B. so:// Deklaration im Header private: vector< vector<double> > Matrix; vector<double> Werte; void function(int zeile) { RueckgabeWerteausMatrix = Matrix[zeile]; return RuechgabeWerteausMatrix; } const std::vector<double>& getWerte() const; // Implementierung in der *.cpp const std::vector<double>& getWerte() const { return Werte; }
Gruß
H.-Gerd
-
hab´s auch schon hingekriegt.
danke fuer die schnelle antwort!!!
-
So langsam dämmert's.
Könnte es das sein, was Du brauchst?
// Header von Klasse 1 private: vector< vector<double> > Matrix; vector<double> Werte; public: const std::vector<double>& function(int zeile) const; // Implementierung (*.cpp) von Klasse 1 const std::vector<double>& Klasse1::function(int zeile) const{ return Matrix[zeile]; } // Verwendung des Rückgabe-Vector in Klasse 2 void Klasse2::funktion(zeile) { Klasse1 myClass; vector<double> Werte = myClass.function(zeile); // Mache Sachen mit Werte... }
Gruß
H.-Gerd
-
genau so habe ich es auch gemacht,
besten dank fuer die klasse hilfe!!