Если у меня есть
boost::multi_array<int,2> myArray(boost::extents[10][10]);
Какой тип является следующим?
myArray[4]
Как мне определить ссылку на него в интерфейсе функции?
int doSomething(xxxxxx& mySubArray, const int dim) {
for (int i = 0; i < dim; i++) {
std::cout << mySubArray[i] << std::endl;
}
}
От документация: boost::multi_array<int, 2>::reference
,
За NumDims == 2
это тип boost::multi_array<int, 2>::template subarray<1>::type
или поочередно boost::array_view_gen<boost::multi_array<int, 2>, 1>::type
, Как только размерность представления массива достигнет 0, вы получите ссылку на элемент (т.е. int &
) вместо
Других решений пока нет …