我正在尝试使用 Eigen 的映射功能映射到内存中的稀疏向量,但我似乎无法编译对此的声明,因为 'InnerStrideAtCompileTime' 不是 'Eigen::SparseVector<_Scalar, 0,_StorageIndex>'。
这是否不受支持?
示例代码:
#include <Eigen/Core>
#include <Eigen/SparseCore>
void Foo()
{
int innerIndices[10];
float values[10];
Eigen::Map<const Eigen::SparseVector<float>> eigenRigOffsets(100, 10, &innerIndices[0], &values[0]);
}
最佳答案
它似乎(尚)不受支持。支持Eigen::Map<Eigen::SparseMatrix<float>>
(如 documentation 所示),尽管这不是您所要求的。也许ggael会有更好的答案(或实现)。
关于Eigen- Eigen::Map<const Eigen::SparseVector<float>> 的编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58611437/