Hilfe bei Boost multi_array



  • Hi,
    Ich probiere schon einige Zeit durch ein boost::multi_array zu iterieren. In der Dokumentation steht dazu auch nichts. Also folgendes habe ich probiert, was aber nicht klappt:

    typedef boost::multi_array<float, 2> float_multiarray;
    float_multiarray myarray(extents[dimX][dimY]);
    //Die Frage lautet, wenn ich dimX und dimY nicht mehr habe, wie ich dann durch
    //das array iterieren kann
    for (float_multiarray::index i = 0; i < myarray.size(); ++i) 
    myarray[i] = 0.; //So geht das nicht
    //Mit Iteratoren hab ichs auch probiert ging aber auch nicht.
    

    Kann mir jemand helfen?
    Danke für alle Antworten.

    Tschau



  • for (int x = 0; x < myarray.size(); ++x)
    for (int y = 0; y < myarray.size(); ++y)
    {
       myarray[x][y] = 0;
    }
    

    So in der Art sollte es gehen.



  • Hi,
    so geht es: ist aber nicht besonders schön...

    for (index i = 0; i < myarray.size(); ++i)
    for (index j = 0; j < myarray[0].size(); ++j)
    {
       myarray[i][j] = 0;
    }
    

    Weiß jemand vielleicht eine bessere Methode?


Anmelden zum Antworten