学徒,求大神指教!!
C#的事件,什么是委托?听老师说这个很难理解,想先了解下?不知是否有人指导? --------------------编程问答-------------------- 自己看书会死啊--------------------编程问答-------------------- 就是看不明白啊!! --------------------编程问答-------------------- 这里有个例子,很详细,希望对你有所帮助 :http://hi.baidu.com/david_dong87/item/a22bb85bcf221c13da163593 --------------------编程问答-------------------- 可以理解为函数指针。说白了就是对具有相同签名的一对方法的一种抽象,相当于抽象出一个模板。比如:
// 具体实现省略
int Add(int a, int b);
int Sub(int a, int b);
int Mul(int a, int b);
int Div(int a, int b);
那么,下面这个委托可以指代以上四种的其中一个进行执行:
delegate int CalcDel(int, int);
那么,现在你就可以这样用:
--------------------编程问答-------------------- --------------------编程问答-------------------- 委托是这样一个类型,允许你将一个函数作为参数类型传给一个方法。
public int Calc(CalcDel calcDel, int a, int b)
{
return calcDel(a, b);
}
// 入口
int sum = Calc(Add, 1, 2); // 和:3
int dif = Calc(Sub, 1, 2); // 差:-1
int prd = Calc(Mul, 1, 2); // 积:2
int quo = Calc(Div, 1, 2); // 商:0
我们编写函数来重用,参数使得相同的程序可以处理不同的数据。而委托使得我们相同的程序框架,可以处理不同的程序。
补充:.NET技术 , C#