C#泛型委托

因为项目原因最近要使用C#进行编程,于是每天现学现卖一点一点的进行开发。之前很长的时间一直使用C和C++进行编程,于是转到C#一开始开始不是特别适应的,特别是C#这门语言没有了指针,感觉编程的 灵活度马上就下降了,我狂野指针好像再也不能随意点击我想要的内存了,上网找方法,看到C#的方法--------委托。

C#的委托和函数指针很像很像,

(1)自定义一个与要指向的方法格式相匹配的的委托。

如:public void delegate MyDelegate<T>(T arg);

(2)创建委托实例,将方法名作为参数

方法:void MyStrinig(string arg){……};

委托实例:MyDelegate<string> strTarget = new MyDelegate<string>(MyString);

(3)通过调用委托对象来间接调用方法:

strTarget("some data");

也可以是:strTarget.Invoke("some data");


7 - 28

泛型Action<> 和 Fun<>委托

Action的使用方法和上面类似,但是不用自己定义,在mscorlib.dll和System.Core.dll的System命名空间中

Action<>支持高达16个参数,但是返回值只能是void

Fun<>同样支持16个参数并具有自定义的返回值的方法,Fun<>最后一个类型参数总是方法的返回值。

未完待续……


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值