2 Dimen. Vector



  • Hallo zusammen,

    könnte mir mal jemand einen Bsp. für einen 2D Vector zeigen?
    Wäre echt nett von euch. Hab da voll meine schwierigkeiten.



  • Meinst Du sowas wie

    std::vector<std::vector<int> > int2Dvec;
    

    oder einen mathematischen Vektor?



  • jencas schrieb:

    Meinst Du sowas wie

    std::vector<std::vector<int> > int2Dvec;
    

    oder einen mathematischen Vektor?

    Ne kein mathematischen vektor.

    Also müsste ich es dann so machen?
    std::vector<std::vector<int> > P_kanal;

    for (Kanal=0; kanal <2; kanal++)
    {
    P_kanal.push_Back[0] (wert);
    P_kanal.push_Back[1] (wert);
    }
    könnte ich so 2 kanäle abfragen und die dann in die Vectoren speichern und später seperat aufrufen?



  • Wenn die Anzahl der Kanäle fix ist, dann würde ich eher einen vector von structs machen, bei 2 Kanälen würde ich ggfs. sogar einen vector von std::pair nehmen (obwohl ich das eher unübersichtlich finde, weil first und second so uninformativ bezgl. des Inhalts sind).

    Also so etwas wie:

    struct Messwerte
    {
    Messwerte(int wert1_, int wert2_) : wert1(wert1_), wert2(wert2_) {}
    
    int wert1;
    int wert2;
    };
    
    std::vector<Messwerte> messwertCont;
    
    messwertCont.push_back(Messwerte(wert1, wert2));
    

    oder

    std::vector< std::pair<int, int> > messwertCont;
    
    ...
    
    messwertCont.push_back(std::pair(wert1, wert2));
    


  • Ok

    das sieht ja mal ganz anders aus als was ich mir da vorgestellt habe 🙂

    Danke dir. Werde es in meinem Problem mal so umsetzen.

    Ich habe einen 2D Array und wollte den über einen Vector ablösen, da ich später beim weiter Programmieren einen Vector benötige.


Log in to reply