Делегат Func с переменной ref public object MethodName(ref float y) { //method } Как определить делегат Func для этого метода? Ответ 1 Это невозможно сделать с помощью 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); } Ответ 2 В .NET 4+ вы также можете поддерживать типы ref... public delegate bool MyFuncExtension<in string, MyRefType, out Boolean>(string input, ref MyRefType refType);
Ответ 1 Это невозможно сделать с помощью 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); }
Ответ 2 В .NET 4+ вы также можете поддерживать типы ref... public delegate bool MyFuncExtension<in string, MyRefType, out Boolean>(string input, ref MyRefType refType);