• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • YouClaw
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

甜蜜LOVE教主

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

委托

1.为什么要用委托?
 
  委托可以给某个对象绑定事件,首先事件是必须存在的,但是我们并不知道这个事件是给谁工作的,所以我们需要委托这个    中间人来给对象和事件牵线

2.委托的定义 

  [访问修饰符]   delegate  返回类型  委托名称(参数列表);
  其中,返回类型可以是任意的,参数也是可以任意的,委托实际上就是一个继承自MulticastDelegate基类的一个自定义类

3.怎样给对象和事件牵线?
    创建一个委托----->存在一个事件----->对象.事件属性+=委托对象(事件名称);

4.什么是多播委托?
   多播委托是委托的一种特殊应用,多播委托允许将多个委托对象组成一个委托链,如:
   public delegate void ReturnStr();
   class Program
   {
           public static void Main(string[] args)
           {
                 ReturnStr str=new ReturnStr(Function.ReturnA);
                 str+=new ReturnStr(Function.ReturnB);
                 str+=new ReturnStr(Function.ReturnC); 
 
                  [
                       上述代码等同于下面的代码(C#2.0以后):
                        ReturnStr str=Function.ReturnA;
                        str+=Function.ReturnB;
                        str+=Function.ReturnC;
                  ]   
                 str();
                 Console.ReadLine();   
           }
   }
   class Function
   {
        public static void ReturnA(){Console.WriteLine("A");}
        public static void ReturnB(){Console.WriteLine("B");}
        public static void ReturnC(){Console.WriteLine("C");}

   }

   

 

posted on 2010-12-08 13:37  甜蜜LOVE教主  阅读(112)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3