Не могу создать ArrayWrapper из const DenseBase - PullRequest
0 голосов
/ 28 ноября 2018

Я использовал ArrayWrapper для преобразования массива и матрицы в массив.

Вариант использования: DenseBase, auto и двоичная операция говорят, что массивы имеют различную форму

Проблема: невозможно построить ArrayWrapper<D> с const DenseBase<D>.

Test (также на godbolt.org )

#include <Eigen/Eigen>

template <typename D>
void f(const Eigen::DenseBase<D>& arr) {
    const Eigen::ArrayWrapper<D> wrapper(arr);
}

int main() {
    Eigen::ArrayXXf a(3, 4);
    f(a);
}
...