많은 함수가 있지만 다른 함수 내에서 실행해야합니다.코드를 매개 변수로 사용하는 함수
wrapper(Method1());
문제는에, 그쪽은 가끔 방법 항목 및 방법 2를 실행할 필요가 있습니다 :
는 나는이
public void Method1()
{
bla bla
}
public void Method2()
{
bla bla
}
public void Wrapper(Action<string> myMethod)
{
method{
myMethod()
}
bla bla
}
같은 것을 할 그리고 이런 식으로 뭔가를 사용하여 호출 할 수 있습니다 알고 동시. 그들은 많이 있습니다. 때때로 한 개, 때때로 동시에 여러 개.
Wrapper({bla bla bla; method(); bla bla; }
{
method{
bla bla bla;
method();
bla bla;
}
}
이 방법 안에 코드 블록을 실행하고 메서드의 매개 변수는 코드 블록 :
그래서 나는 이런 식으로 뭔가를 좋은 것 생각하고있다. 가능하다고 생각하십니까? 아니면 다른 접근 방법을 권하고 싶습니까? 당신이 명시 적으로 원하는 서명 (여기Action<string>
일치)와 방법을 정의 할 필요가 없습니다 것입니다
static void Main(string[] args)
{
Wrapper((s) =>
{
//actually whatever here
int a;
bool b;
//..
Method1();
Method2();
//and so on
});
}
을하지만 :
http://msdn.microsoft.com/en-us/library/ms173171.aspx 및 http://msdn.microsoft.com/en-us/library/bb882516.aspx가 도움이 될 수 있습니다. –
실행을위한 함수에 코드 블록을 전달하려면 람다가 필요합니다. http://msdn.microsoft.com/en-us/library/bb397687.aspx – Patashu