C#中如何把函数当做参数传递到别的函数中

【问题】

C#想要传递函数参数,但是参数类型是函数,不知道如何传递。

其实网上一大堆,都太啰嗦了。我就喜欢简单的方法。

结合.NET委托的性质和直接用匿名委托传函数蛮简单的,希望新手可以自己试试。

下面就是具体实现了

  class Program
    {
        static void Main(string[] args)
        {
            A a = new A();
            B b = new B();
            a.FunctionA(delegate () { b.FunctionB(); });


        }
    }
    class A
    {
        public void FunctionA(System.Action action)
        {
            //*********
            Console.WriteLine("我是函数A");
            action.Invoke();
            //*********
        }
    }
    class B
    {
        public void FunctionB()
        {
        //********
            Console.WriteLine("我是函数B");

        //*******        

}     

 }

猜你喜欢

转载自blog.csdn.net/martins1994/article/details/80510589