迭代一个boost multi_array

时间:2011-02-06 22:00:06

标签: c++ boost

我遇到的问题是我认为应该是一段简单的代码。我有一个N x M的2D数组,目前存储在boost multi_array中。 N列表示空间维度,例如x,y,z和M行是沿每个维度的点。

我想要做的是沿每个维度打印所有可能的点组合

例如,如果我的数组是:

-1 -1
 1  1

我想打印:

-1 -1
 1 -1
-1  1
 1  1

我不能让它工作,我总是超出阵列范围。我已经尝试使用迭代器并以A [i] [j]的形式访问元素,但没有运气。 有人有任何建议或想法吗?

1 个答案:

答案 0 :(得分:0)

您可能不会通过将迭代器设置回begin()来重置迭代器。更好的策略是根本不重用迭代器。将它们放在您正在使用它们的循环的本地。