C#委托的基本使用

来源:互联网 发布:软件502 bad gateway 编辑:程序博客网 时间:2024/06/15 19:26
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace WindowsFormsApplication1{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();            InitData();        }        private void InitData()        {            CalacuteDelegate calacute = new CalacuteDelegate(new CalacuteDelegate(Add));            var result = calacute(3, 5);            MessageBox.Show(result.ToString());            result = calacute(3, 7);            MessageBox.Show(result.ToString());            calacute -= Add;            calacute += Sub;            result = calacute(3, 7);            MessageBox.Show(result.ToString());        }        public int Add(int a, int b)        {            return a + b;        }        public int Sub(int a, int b)        {            return a - b;        }    }    public delegate int CalacuteDelegate(int num1, int num2);}


总结:委托 的基本使用

1.声明委托,相当于定义方法原型

public delegate int CalacuteDelegate(int num1, int num2);

2.定义委托,用声明的委托定义委托,需要绑定的具体方法(方法的参数和返回值必须和委托类型的方法参数和返回值相同)

CalacuteDelegate calacute = new CalacuteDelegate(new CalacuteDelegate(Add));

3.使用委托,用委托代替方法调用

var result = calacute(3, 5);
           
           


原创粉丝点击