问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关於C#代表(delegate)的小问题???

发布网友 发布时间:2022-05-17 15:44

我来回答

5个回答

热心网友 时间:2023-10-27 15:31

delegate简单的说,就是有类型的函数指针。
与c++或者c的函数指针相比,他的返回类型、参数列表是在定义中
规定的,实例必须遵守。
对于代理的使用者来说,无需知道代理的实现者,只要知道代理就可以了。

热心网友 时间:2023-10-27 15:31

说一堆,不如用一个例子来解释一下
using System;
public class SamplesDelegate {

public delegate String myMethodDelegate( int myInt );

//声明一个字符类型委托,但其所带参数可为任何类型,本例为证型

public class mySampleClass {

public String myStringMethod ( int myInt ) {
if ( myInt > 0 )
return( "positive" );
if ( myInt < 0 )
return( "negative" );
return ( "zero" );
}

public static String mySignMethod ( int myInt ) {
if ( myInt > 0 )
return( "+" );
if ( myInt < 0 )
return( "-" );
return ( "" );
}
}

public static void Main() {

mySampleClass mySC = new mySampleClass();
myMethodDelegate myD1 = new myMethodDelegate( mySC.myStringMethod );
myMethodDelegate myD2 = new myMethodDelegate( mySampleClass.mySignMethod );

Console.WriteLine( "{0} is {1}; use the sign \"{2}\".", 5, myD1( 5 ), myD2( 5 ) );
Console.WriteLine( "{0} is {1}; use the sign \"{2}\".", -3, myD1( -3 ), myD2( -3 ) );
Console.WriteLine( "{0} is {1}; use the sign \"{2}\".", 0, myD1( 0 ), myD2( 0 ) );
}

}

/*
This code proces the following output:

5 is positive; use the sign "+".
-3 is negative; use the sign "-".
0 is zero; use the sign "".
*/

热心网友 时间:2023-10-27 15:32

delegate 是指针的一种,用于指向一组(注意是多数)方法而非数据对象。 delegate 与传统 iso.c++ 的函数指针不同的是 delegate 对类型要求非常严格。

热心网友 时间:2023-10-27 15:32

我是个初学者,我的理解就是"代替""引用"

热心网友 时间:2023-10-27 15:33

那等你智商正常了的时候再来吧
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
硅胶与液态硅胶手机壳的区别 什么样的过敏会传染 过敏的原理是什么?为什么有的人过敏,有的人不过敏?谢谢! 过敏为什么会痒 评审报告需要注意什么 财政评审流程及注意事项 高效项目评审的6大注意事项 银行双录 什么意思 什么是银行双录 在异地哪些可公证 delegate costs是什么意思 为什么星星会眨眼睛的故事 C#中代表DELEGATE的作用是什么? 请问commission和delegate在“委任”“委托”的意思上怎么区分 designate怎么用和delegate有什么区别? delegate和represent的区别? 注册怎么弄? 如何弄一个超级帅的? 那个要怎么弄?我没有银行卡 qq号申请怎么弄 申请怎么弄 怎么弄 同一个人可以建两个吗?怎么弄? 要申请一个是怎么弄的? 我想重新注册一个新的,该怎么办? 我没有qq号也没有,我想创一个怎么弄? 长春网站制作哪些家较为可靠? 软件定制开发平台有推荐的没,用勤哲怎么样? yonex x-6羽毛球拍090224ch是什么意思 VICTOR X800BRA21L羽毛球拍。 谁知道。多少钱 对象.delegate=self是啥意思 谁能提供下KYCON KPPX-4P对应的插座资料啊,如图为插头 qml delegate 是什么意思 粃粑长的是什么样子。 python中,{u&#39;last_running_time&#39;: u&#39;2014-07-01 17:22:15&#39;}前面的u是什么意思? delegate attendance是什么意思 有会python爬虫编写的吗 是窗户,共几划 炫舞之星kppx5.Com。。。我咋不能领取嘞 “是、窗、户”这三个字的笔画一共是多少? python u&quot;&quot;是什么意思&#39; “Lambert-Beer定律”的物理意义是什么? Lambert-beer定律 蓝柏格定理是征服女人的最佳方法吗? Lambert-Beer定律,当合适波长的单色光通过某溶液并被吸收时,其吸光度 郎伯定律(Lambert’s Law) -dI&#47;dL=αI 中的d表示什么含义?α表示什么含义? Lambert- Beer定律? 液体浓度和透光那个实验(Lambert-Beer定理)的影响因素是什么? 在Lambert-Beer定律为什么A=-lgT 如何证明吸光度与黑色素的质量符合lambert-beer定律