[英]No overload matches the delegate c#
"GetSum" 的重载与委托
Formula<double>
匹配
我该如何解决这个错误?
我的代表是:
public delegate T Formula <T>(T arg1);
格和:
public delegate T Formula <T>(T arg1);
class CalculatorClass
{
public static double total;
public Formula<double> formula;
public static double GetSum(double num1, double num2)
{
return total = num1 + num2;
}
}
我的代码:
private void btnEqual_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(txtBoxInput1.Text);
num2 = Convert.ToDouble(txtBoxInput2.Text);
Formula<double> sum = new Formula<double>(CalculatorClass.GetSum);
}
您的代表期望 T GetSum 类型的一个参数显然有 2 个参数。 尝试将您的代表更改为:
public delegate T Formula <T>(T arg1, T arg2);
它会编译。 顺便说一句,您可以使用内置委托Func<in T1,in T2 out TResult>
作为Func<double, double, double>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.