what's delegate in .net?
2010-03-24 18:06
309 查看
委托就是一个引用,只不过与我们平时所创建的引用的区别是:前者是用一个函数来表示对另一个函数的引用,而后面的的使用一个string类型的变量来对一个string类型变量的引用。
为了说清这个问题,首先我会举一个string引用类型的例子:
如下代码:
string str=new string("I'm Tony!");
则我们知道其中str就是一个引用,str是一个地址,放在方法区,指向的内容是放在堆中的string对象"I'm Tony!",简单的来说,str是一把钥匙,而"I'm Tony!"是一个保险柜,只有钥匙(str)才能打开(访问)保险柜。
那么理解了上面的内容,接下来要讲解。net中的委托啦。
看下面代码:
delegate delegateDemo(double num1,double num2);
double devide(double num1,double num2)
{
return num1/num2;
}
double multuply(double num1,double num2)
{
return num1*num2;
}
大家留心,devide和multipuly函数都是有相同的参数类型,而上面我想演示的是用函数elegateDemo来实现引用函数devide和multipuly函数其中的一个。
下面是引用:
result=new delegateDemo(devide);//委托devide函数
result=new delegateDemo(multuply);//委托devide函数
谢谢,疏漏之处,望指点!
为了说清这个问题,首先我会举一个string引用类型的例子:
如下代码:
string str=new string("I'm Tony!");
则我们知道其中str就是一个引用,str是一个地址,放在方法区,指向的内容是放在堆中的string对象"I'm Tony!",简单的来说,str是一把钥匙,而"I'm Tony!"是一个保险柜,只有钥匙(str)才能打开(访问)保险柜。
那么理解了上面的内容,接下来要讲解。net中的委托啦。
看下面代码:
delegate delegateDemo(double num1,double num2);
double devide(double num1,double num2)
{
return num1/num2;
}
double multuply(double num1,double num2)
{
return num1*num2;
}
大家留心,devide和multipuly函数都是有相同的参数类型,而上面我想演示的是用函数elegateDemo来实现引用函数devide和multipuly函数其中的一个。
下面是引用:
result=new delegateDemo(devide);//委托devide函数
result=new delegateDemo(multuply);//委托devide函数
谢谢,疏漏之处,望指点!
相关文章推荐
- What's the meaning of EOF ?
- what's new in ASP.NET MVC5(ASP.NET MVC5 新特性,新功能)
- .net垃圾回收学习【IDisposable: What Your Mother Never Told You About Resource Deallocation】[翻译&学习]
- What 's CMSIS
- what's the team
- What Is HTML Transitional, Strict & Frameset?
- What's in a number? No great fortune
- What's the returned value of javascript constructor function
- What's FreeMarker
- What UML Is and Isn't
- IMS Now: What, Why & Where?
- Second 'W', WHAT
- 思考Android架構(一):What & Why《Android的UI控件是单线程》?
- What are the differences between shell , console & terminal?
- ubuntu12.04连接服务器的时候出现错误“terminate called after throwing an instance of 'std::runtime_error' what(”
- What's New in the Visual Studio Debugger
- PS笔记:What's the difference between Subexpression and Array Subexpression?
- python中的单元测试pyUnit & what is unit test and why
- what's the meaning of these numbers?
- What's the difference between tape expiry date and image expiry date