·天新网首页·加入收藏·设为首页·网站导航
数码笔记本手机摄像机相机MP3MP4GPS
硬件台式机网络服务器主板CPU硬盘显卡
办公投影打印传真
家电电视影院空调
游戏网游单机动漫
汽车新车购车试驾
下载驱动源码
学院开发设计
考试公务员高考考研
业界互联网通信探索
您现在的位置:天新网 > 软件开发 > .Net开发 > C#
C#委托基础1——委托基础
http://www.21tx.com 2012年11月29日

C#委托基础系列原于2011年2月份发表在我的新浪博客中,现在将其般至本博客。

委托和其委托的方法必须具有相同的签名。签名相同:1.参数类型相同 2.参数数量相同 3.返回值一致

例一

class Program     
{     
        public delegate int MathMethod(int x, int y);     
                
        public int Add(int a, int b)     
        {     
            return a + b;     
        }     
        
        static void Main(string[] args)     
        {     
            MathMethod mm;     
            Program p = new Program();     
            mm = p.Add;// 相当于一个方法的容器     
            Console.WriteLine("计算结果为{0}",mm(7,6));     
            Console.ReadLine();     
        }     
}

例二

class Program     
{     
                
        public delegate double MathMethod(double x, double y);     
        
        double Add(double a, double b)     
        {     
            return a + b;     
        }     
        
        double Subtract(double a, double b)     
        {     
            return a + b;     
        }     
        
        double Multiply(double a, double b)     
        {     
            return a * b;     
        }     
        
        double Divide(double a, double b)     
        {     
            return a / b;     
        }     
        
        void DoCalculate(MathMethod mm)     
        {     
            Console.WriteLine("请输入第一个数");     
            double x = Convert.ToDouble(Console.ReadLine());     
        
            Console.WriteLine("请输入第二个数");     
            double y = Convert.ToDouble(Console.ReadLine());     
        
            Console.WriteLine("结果{0}",mm(x, y));     
            Console.ReadLine();     
                    
        }     
        
        static void Main(string[] args)     
        {     
            MathMethod mm;     
            Program p = new Program();     
            mm = p.Divide;     
            p.DoCalculate(mm);     
        }     
}

本文出自 “IT Fat Man” 博客,请务必保留此出处http://woshixy.blog.51cto.com/5637578/1070976

上一篇: [C# 基础知识系列]专题八:深入理解泛型可变性
下一篇: C# 遍历文件夹之后上传文件夹下的所有文件(失败解析)

关于我们 | 联系我们 | 加入我们 | 广告服务 | 投诉意见 | 网站导航
Copyright © 2000-2011 21tx.com, All Rights Reserved.
晨新科技 版权所有 Created by TXSite.net