假设我有以下三种方法
void Execute(<What to put here?> method)
{
method();
}
void Function1(string a) { ... }
void Function2(int a) { ... }
如何将指定参数1>的Function1
和Function2
函数传递给Execute
方法?
e.g。像这样
Execute(Function1("Foo"));
但上面的示例是调用函数,我希望它只能在Execute
方法中调用。
我希望它清楚,如果它没有,我正在寻找这样的方式:
void Execute(Action method)
{
method();
}
void Function3() { ... }
然后可以像这样调用:
Execute(Function3);
以便在Function3
方法中调用Execute
,而不是在调用Execute
方法时调用Function3
。
我希望能够做同样的事情,但将特定参数传递给调用它时应该使用的{{1}}方法。
答案 0 :(得分:12)
简单地制作一个lambda:
Execute(() => Function1("Foo"));