使用来自匿名方法的ref或out参数调用方法
这个问题与前几天我问的问题有关,我从中得到了一些很好的答案。
我需要以通用方式调用具有不同签名的各种Web方法。 我希望能够将Web方法传递给具有委托参数的方法,但我不确定如何处理不同的签名。 解决方案是使用lambdas(或匿名方法,因为我目前正在使用C#2)。
这很好用,直到我需要我的匿名方法来调用带有out参数的web方法。 由于此处说明的原因,您无法执行此操作。
所以我的问题是,除了创建一个没有引用的包装器方法或从我的匿名方法调用params之外,是否有更简单的方法来实现这一点?
实际上,你可以使用ref
和out
– 只是不直接使用调用方法的参数; 但是,您可以在调用之前和之后复制值:
上述就是C#学习教程:使用来自匿名方法的ref或out参数调用方法分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
static void Foo(ref string s, out int i) { string tmpS = s; int tmpI = 0; // for definite assignment DoIt(delegate { Bar(ref tmpS, out tmpI); }); s = tmpS; i = tmpI; }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/999749.html