Unity学习(C#)——委托(delegate)的定义和声明

委托的定义形式和函数一样,只是需要加上delegate 且没有函数体
public delegate double Mydelegate(double x, double y);
委托时,返回值以及参数列表必须都一样,才可以赋值。

        public delegate double Mydelegate(double x, double y); 
        static double Multiply(double num1,double num2)
        {
            return num1 * num2;
        }
        static int Multiply1(int num1, int num2)
        {
            return num1 * num2;
        }

        static void Main(string[] args)
        {
            Mydelegate a=Multiply;//委托时,返回值以及参数列表必须一样,否则无法赋值
            //Mydelegate a = Multiply1;//会报错,因为返回值以及参数列表不一样
            double mul = a(2, 3);
            Console.WriteLine(mul);
            Console.ReadKey();

        }

你可能感兴趣的:(Unity学习(C#)——委托(delegate)的定义和声明)