函数 SetArcCostEvaluatorOfAllVehicles() 出错;

Error on function SetArcCostEvaluatorOfAllVehicles();

提问人:Bruno Raphael Facundo 提问时间:10/17/2023 更新时间:10/17/2023 访问量:15

问:

当我尝试通过以下函数设置成本时:

routing.SetArcCostEvaluatorOfAllVehicles((i, j) =>
        {
            return (int)distanciaMatriz[manager.IndexToNode(i), manager.IndexToNode(j)];
        });

它返回以下错误:

Error CS1660 Unable to convert lambda expression to type "int" because it is not a delegate type.

我该如何解决这个问题?我已经尝试直接为 int 投回车,但什么也没发生。

C# .NET 路由 错误处理 约束

评论


答:

0赞 Dyrandz Famador 10/17/2023 #1

您能否尝试将它们分配给 int 变量以确保它们与预期的委托签名匹配

int nodeI = manager.IndexToNode(i);
int nodeJ = manager.IndexToNode(j);
return (int)distanciaMatriz[nodeI, nodeJ];