使用 C++,我很难理解一个编译错误。我有这个功能,有这个给定的签名:
void MethodNMMS::tryNMSA(double factor, double temperature,double& funcWorst,int& iWorst, double& funcTry, double* funcEvals)
{
//...
}
我的问题涉及论点double& functry
(例如)。我在另一个函数中调用这个函数tryNMSA()
,我希望在执行这个函数期间修改 functry。这就是我通过引用传递的原因。
这是函数调用:
// other initializations for funcEvals...
double funcTry = 0;
tryNMSA(-1.0,temperature,funcWorst,iWorst,&funcTry,funcEvals);
我放了这个符号是因为我确实想通过引用传递这个东西。这是不允许的。怎么了,为什么?
谢谢并恭祝安康。