99.C# 委托基础

摘要


委托是持有一个或多个方法的对象,当然正常情况下你不会想要执行一个对象,但委托与对像不同,可以执行委托,这时委托会执行他所持有的方法

如果用过c++,可以把委托看成一个类型安全的面向对象的c++函数指针


正文


对于委托,有两个字“回调”这是重点。

一个例子

delegate void DelNumber(int value);
void ShowLow(int value)
{
    MessageBox.Show("低值" + value.ToString());
}

void ShowHigh(int value)
{
    MessageBox.Show("高值" + value.ToString());
}
private void btnShow_Click(object sender, EventArgs e)
{
    DelNumber delNumber;
    Random random = new Random();
    int value = random.Next(1, 99);
    delNumber = value < 50 ? new DelNumber(ShowLow) : new DelNumber(ShowHigh);
    delNumber(value);
}

声明流程

组合委托

委托可以使用额外的运算符来组合,这个运算符最终会创建一个新的委托

delegate void MyDel(string value);
void Print(string value)
{
    MessageBox.Show("Print " + value);
}

void Show(string value)
{
    MessageBox.Show("Show " + value);
}

private void btnShow_Click(object sender, EventArgs e)
{
    MyDel del1 = new MyDel(Print);
    MyDel del2 = new MyDel(Show);
    MyDel del3 = del1 + del2;
    del3("TEST");
}
展开阅读全文

页面更新:2024-04-20

标签:组合   指针   函数   例子   摘要   流程   对象   声明   重点   基础   方法

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top