我正在使用的库之一在 C# 中定义了这一点:
public ushort GetParameterSet(string name, out ParameterSet parameterSet)
我正在尝试从 F# 调用它:
let parameterSet = new ParameterSet();
let retVal = currentPanel.GetParameterSet(name, ref parameterSet);
但是,即使 parameterSet 设置为该实例的实例
在 C# 方法中具有有效数据的类,它在 F# 中不会更改。
我在这里缺少什么?
最佳答案
尝试
// let parameterSet = null;
let retval, parameterSet = currentPanel.GetParamterSet(name);
您不应将实例作为 ref
参数传递,因为该方法需要一个 out 参数(在调用时应该是一个未分配的引用,以 out
关键字开头)。关于c# - 将对象从 F# 传递到将其作为输出参数的 C# 方法不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1273907/