hello world!!!!!

写下自己的一些心得,写下自己问题的方式,写下程序之路的艰辛,希望能够有朝一日成为大牛。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

c#基础语法之 解读delegate create by lee

Posted on 2010-11-25 09:57  陈力  阅读(470)  评论(1编辑  收藏  举报

首先自己给委托下人地址 定义为 be defined as

 他其实是在求函数的入口地址,并且带标记,标记他是一个函数入口地址,举例说明如下,欢迎大家与我讨论。

 

代码

        
        
static public void Main()
        {
            MyClass p 
= new MyClass();

            p.InstanceMethod(); 
//直接调用的方式
            MyClass.StaticMethod(); //直接调用的方式



            
// Map the delegate to the instance method:
            MyDelegate d = new MyDelegate(p.InstanceMethod);
            d(); 
//以委托为中介,进行转换,进而可以函数 作函数的参数传递函数
       
            
// Map to the static method:
            d = new MyDelegate(MyClass.StaticMethod);
            d();  
//以委托为中介,进行转换,进而可以函数 作函数的参数传递函数

           
        }
    }


    
// delegate declaration
    delegate void MyDelegate();

    
public class MyClass
    {
        
public void InstanceMethod()
        {
            Console.WriteLine(
"A message from the instance method.");
        }

        
static public void StaticMethod()
        {
            Console.WriteLine(
"A message from the static method.");
        }
    }

 

这样你就能利用他的这个参数作为函数的 参数 来传递函数了,举例说明如下: