
On 06/13/11 15:25, Larry Evans wrote:
On 06/13/11 15:06, kelvSYC wrote:
On Jun 13, 2011, at 8:19 AM, Larry Evans wrote:
[snip]
So I'd want z to be equal to
std::vector<std::vector<int>>({{1,4}, {1,5}, {2,4}, {2,5}, {3,4}, {3,5}});
Is there something in boost that will give me this sequence (or at least iterators therein?)
I pretty sure there is none since the thread I mentioned previously did not mention one and people replying to that thread indicated it would be desirable.
The attached code, using boost multi_array, produces output shown in 2nd attachment. It does use some utility functions for printing out the mult_array, but I'm sure you could roll-your-own without much problem. The interesting thing is that it will work for not just vectors, but any dimension multi_array; however, I think it depends on the multi_array's being in c_storage_order. I tried inner_product with the code from the Budd book; however, that failed to get the right answer for fortran_storage order. The last result output is simply a flattened version of the immediately preceding result output. I think that last output is closer to the std::vector<std::vector<int> > form you showed previously. HTH. -Larry