使用预定义参数委派

时间:2015-03-12 13:32:13

标签: c# delegates

我需要将指针作为参数传递给函数。它看起来像这样:

void f(Action<String> a);

但是如果调用者知道将使用哪个字符串呢?他总是知道这一点。当然我可以添加一个参数,但这并不酷。

我可以以某种方式创建具有预定义参数的委托吗?感谢。

编辑:

作为解决方法,我可以这样做

void f(Action<String> a, String s)
{
    a(s);
}

...
f(_delegate, "string");

1 个答案:

答案 0 :(得分:0)

正如@ Spo1ler所评论的那样,传递Action代替Action<string>

void f(Action a)
{
    a();
}
...
f(() => _delegate("string"));