В boost::multi_array, какой тип подмассива?

Если у меня есть

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;
    }
}

1 ответ

Решение

Из документации: 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 &) вместо

Другие вопросы по тегам