我用ArrayWrapper
将数组和矩阵都转换为数组。
用例:DenseBase, auto, and binary operation says arrays have different shape
问题:无法使用ArrayWrapper<D>
const
来构建DenseBase<D>
。
测试(也位于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);
}