示例#1
0
        static void Main(string[] args)
        {
            var stringDel = new myCoolStringDelegate(SomeMethodWithString);

            Console.WriteLine(stringDel(15, 16));

            Console.WriteLine("**********************************");
            var voidDel = new MyVoidDelegateWithInt(PrintInteger);

            // or   MyVoidDelegateWithInt voidDel = PrintInteger;

            voidDel += PrintIntegerSquared;
            voidDel += PrintInteger;
            voidDel += PrintInteger; // cancelled out
            voidDel -= PrintInteger; // cancelled out
            voidDel += (x) => Console.WriteLine("Printing some cool inline function");
            voidDel += (x) => Console.WriteLine("Printing something else cool");
            voidDel += (x) => Console.WriteLine("**********************************");

            PassSomeDelegate(voidDel);
            voidDel?.Invoke(7);
            PassDelegate(voidDel);
        }
示例#2
0
 public static void PassSomeDelegate(MyVoidDelegateWithInt del)
 {
     del(10);
 }