private delegate void delegateEvent(object[] dlstr);  
委托可以带 数组类型的参数吗?

解决方案 »

  1.   

    多播委托
    -------------------
    using System;class MulticastTester
    {
        delegate void Greeting();
        
        public static void SayThankYou()
        {
            Console.WriteLine("Thank you!");
        }    public static void SayGoodMorning()
        {
            Console.WriteLine("Good morning!");
        }    public static void SayGoodnight()
        {
            Console.WriteLine("Goodnight");
        }
        
        public static void Main()
        {
            Greeting myGreeting = new Greeting(SayThankYou);
            Console.WriteLine("My single greeting:");
            myGreeting();
            
            Greeting yourGreeting = new Greeting(SayGoodMorning);        
            Console.WriteLine("\nYour single greeting:");
            yourGreeting();
            
            Greeting ourGreeting = myGreeting + yourGreeting;
            Console.WriteLine("\nOur multicast greeting:");
            ourGreeting();        ourGreeting += new Greeting(SayGoodnight);
            Console.WriteLine("\nMulticast greeting which includes Goodnight:");
            ourGreeting();
            
            ourGreeting = ourGreeting - yourGreeting;
            Console.WriteLine("\nMulticast greeting without your greeting:");
            ourGreeting();
            
            ourGreeting -= myGreeting;
            Console.WriteLine("\nSingle greeting without your greeting and my greeting:");
            ourGreeting();
        }