首页 新闻 会员 周边 捐助

哪位大神给咱讲解下这个方法是什么意思?

0
[已解决问题] 解决于 2013-11-18 10:05

public T Call<T>(Func<Stream, T> parser, string command, params object[] arguments)
{
byte[] buffer = _encoding.GetBytes(CreateMessage(command, arguments));
_stream.Write(buffer, 0, buffer.Length);
return parser(_stream);
}

2个问题:

1 这个方法签名还有参数是神马意思?

2 return parser(_stream);我按F12还是跳到本方法了,为何?

Eysa的主页 Eysa | 初学一级 | 园豆:62
提问于:2013-11-14 18:00
< >
分享
最佳答案
0

建议格式化一下代码:

public T Call<T>(Func<Stream, T> parser, string command, params object[] arguments)
{
    byte[] buffer = _encoding.GetBytes(CreateMessage(command, arguments));
    _stream.Write(buffer, 0, buffer.Length);
    return parser(_stream);
}
奖励园豆:5
会长 | 专家六级 |园豆:12463 | 2013-11-14 18:02

返回值T是个泛型

parser是个委托

parser是参数就是函数的参数,所以f12到了函数的开始部分

会长 | 园豆:12463 (专家六级) | 2013-11-14 18:06

@会长: 看看泛型委托的知识点就懂了,祝你好运

会长 | 园豆:12463 (专家六级) | 2013-11-14 18:06

@会长: 呃这个<>是指泛型T只是一个占位符

Zery | 园豆:6151 (大侠五级) | 2013-11-14 21:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册