68
public object MethodName(ref float y)
{
//method
}

如何为这个方法定义一个 Func 委托?

4

2 回答 2

104

它不能完成,Func但您可以为它定义一个自定义delegate

public delegate object MethodNameDelegate(ref float y);

使用示例:

public object MethodWithRefFloat(ref float y)
{
    return null;
}

public void MethodCallThroughDelegate()
{
    MethodNameDelegate myDelegate = MethodWithRefFloat;

    float y = 0;
    myDelegate(ref y);
}
于 2010-03-17T14:07:07.037 回答
8

在 .NET 4+ 中,您还可以通过ref这种方式支持类型...

public delegate bool MyFuncExtension<in string, MyRefType, out Boolean>(string input, ref MyRefType refType);
于 2014-06-04T18:20:09.403 回答