从array_view中的boost :: multi_array中删除列

时间:2014-06-10 14:03:49

标签: c++ boost

我想创建一个boost::multi_array<double, 2>::array_view<2>::type,其列数少于原始boost::multi_array<double, 2>。我可以使用index_range来执行各种索引操作,但似乎它们都要求创建的视图是原始数组中的连续块。例如,我可以使用以下内容对列进行子选择:

typedef boost::multi_array::types::index_range range;
boost::multi_array<double, 2>::array_view<2>::type view = 
       original[boost::indices[range()][range() > 2]];

但似乎没有办法做这样的事情:

boost::multi_array<double, 2>::array_view<2>::type view = 
       original[boost::indices[range()][range() != 3]];

有没有办法创建这样的非连续视图,或者可能有效地将两个单独的视图合并到同一个数组中?

0 个答案:

没有答案