gpt4 book ai didi

c++ - 通过 const 引用传递后使用 Eigen::Map 发生错误

转载 作者:太空狗 更新时间:2023-10-29 20:51:15 24 4
gpt4 key购买 nike

<分区>

给我一​​个错误的代码如下。当我从参数类型中删除“const”时,它起作用了。

#include<iostream>
#include<vector>
#include</usr/include/eigen3/Eigen/Core>
using namespace std;

void func(const vector<double>& x)
{
Eigen::VectorXd X=Eigen::Map<Eigen::VectorXd>(&x[0], x.size());
}

int main(){
vector<double> x(100);
func(x);
}

错误如下。我无法理解。谁能给我解释一下?有没有一种好方法可以用“const”关键字做同样的事情?

error: invalid conversion from ‘const value_type* {aka const double*}’ to ‘Eigen::Map<Eigen::Matrix<double, -1, 1>, 0, Eigen::Stride<0, 0> >::PointerArgType {aka double*}’ [-fpermissive]
Eigen::VectorXd X=Eigen::Map<Eigen::VectorXd>(&x[0], x.size());

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com