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

    http://www.brainsandbytes.de



  • 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

    http://www.brainsandbytes.de



  • genau so habe ich es auch gemacht,

    besten dank fuer die klasse hilfe!! 😋


Anmelden zum Antworten