博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c#的委托实例
阅读量:5054 次
发布时间:2019-06-12

本文共 2007 字,大约阅读时间需要 6 分钟。

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication2{    class Program    {        static void Add(int num1, int num2)   {       Console.Write(num1 + num2); Console.Write('\n');   }        static void Subs(int i, int j)        { Console.Write(i - j); Console.Write('\n'); }       delegate void  Calc(int i,int j);//定义一个代理类型Calc,它可以用于定义各种参数为两个整数的任意方法;故        static void Main(string[] args)        {            //Calc c1=new Calc(Add);            //Calc c2=new Calc(Subs);            //c1(3, 4);            //c2(3, 4);            Calc c = Add;            c += Subs;            c(8888, 7);            Console.ReadKey();        }    }}

 the second example:

using System;using System.Collections.Generic;using System.Text;namespace Delegate{    //定义委托,它定义了可以代表的方法的类型    public delegate void GreetingDelegate(string name);    class Program    {        public class GreetingManager        {            //在GreetingManager类的内部声明delegate1变量            public GreetingDelegate delegate1;            public void GreetPeople(string name)            {                if(delegate1!=null)                    this.delegate1(name);            }        }        private static void EnglishGreeting(string name)        {            Console.WriteLine("Morning, " + name);        }        private static void ChineseGreeting(string name)        {            Console.WriteLine("早上好, " + name);        }        private static void JapaneseGreeting(string name)        {            Console.WriteLine("おはよう, " + name);        }        //注意此方法,它接受一个GreetingDelegate类型的方法作为参数        static void Main(string[] args)        {            GreetingManager gm = new GreetingManager();            gm.delegate1 = EnglishGreeting;            gm.delegate1 += ChineseGreeting;            gm.delegate1 += JapaneseGreeting;            gm.GreetPeople("Jimmy Zhang");            Console.ReadKey();        }    }}

 

转载于:https://www.cnblogs.com/ewitt/p/7522479.html

你可能感兴趣的文章
两只小熊队高级软件工程第九次作业敏捷冲刺4
查看>>
推荐一个好用的虚拟主机
查看>>
ulimit
查看>>
php代码执行顺序
查看>>
php 写入数据到MySQL以及从MySQL获取数据,页面出现乱码的解决方法
查看>>
MYSQL视图的学习笔记
查看>>
爬虫基础
查看>>
laravel常用artisan命令
查看>>
130292015038 张雅周 第一章作业
查看>>
获取文件字段并生产一个新的页面
查看>>
IIS 添加 MIME
查看>>
[转]协同管理系统
查看>>
安装了OFFICE2007,每次打开word时都显示配置microsoft office professional plus 解决方法...
查看>>
联合体和结构体的区别
查看>>
相同文件名引发的教训
查看>>
android调用系统相机并获取图片
查看>>
The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
查看>>
Spark共享变量(广播变量、累加器)
查看>>
mongoose项目随笔
查看>>
JBOSS实现RMI时注意的问题
查看>>