c# invoke

C#中怎么用invoke获取返回值

小亿
206
2023-10-22 15:23:08
栏目: 编程语言

在C#中可以使用Invoke方法来调用一个方法或委托,并获取其返回值。Invoke方法是Delegate类的成员,可以用于调用任何类型的委托。 以下是一个使用Invoke方法获取返回值的示例:

using System;

public class Program
{
    public static void Main()
    {
        Func<int, int, int> add = Add;
        int result = (int)add.Invoke(3, 4);

        Console.WriteLine("Result: " + result);
    }

    public static int Add(int a, int b)
    {
        return a + b;
    }
}

在上面的示例中,我们定义了一个Add方法,它接受两个整数并返回它们的和。我们还定义了一个Func<int, int, int>委托类型的变量add,它指向Add方法。然后,我们使用Invoke方法调用add委托,并将参数3和4传递给它。最后,我们将返回的结果转换为整数类型,并将其打印到控制台上。

请注意,Invoke方法也可以使用DynamicInvoke方法来代替。DynamicInvoke方法是Delegate类的另一个成员,它接受一个object[]类型的参数数组,并且可以用于调用任何类型的委托。使用DynamicInvoke方法的示例与上面的示例类似,只需将Invoke替换为DynamicInvoke即可。

0
看了该问题的人还看了