Verzahnung zweier std::vector



  • Hallo,

    hier ein Beispiel was ich damit meine:

    struct Struktur1
    {
       int a;
       int b;
    };
    
    struct Struktur2
    {
       short c;
    };
    
    vector<Struktur1> Vektor1;
    vector<Struktur2> Vektor2;
    

    Ich muss diese beiden Vektoren mit der gleichen Anzahl an Elementen nun verzahnen - also soll der Ergebnisvektor im Speicher dann so aussehen:

    abcabcabc...

    Gibt es dafür eine vorbereitete Methode und wie sieht deren Anwendung aus?
    Konnte dazu in der Dokumentation bis jetzt leider nichts finden.

    Vielen Dank für eure Hilfe!



  • vorgefertigt gibt es nichts, aber was spricht gegen so etwas?

    for(int i=0;i<min(Vector1.size(),Vector2.size());++i)
      cout<<Vector1[i].a<<Vector1[i].b<<Vector2[i].c;
    

    PS: Wenn du sichergehen willst, daß die zusammengehörigen Strukt's nicht getrennt werden, solltest du sie zu einer verschmelzen (oder in einen vector<pair<Struktur1,Struktur2> > unterbringen).


Anmelden zum Antworten