我在使用slimDX时遇到了这个问题
MessagePump.Run(form, () => { });
()=> {}呢?
答案 0 :(得分:2)
表达式() => {}
是一个空的lambda表达式。函数MessagePump.Run
为defined as:
public static void Run(
Form form,
MainLoop mainLoop
)
MainLoop
是defined as:
public delegate void MainLoop()
所以它是委托,它不需要任何参数。所以当你通过() => {}
时,它就像一个不做任何事情的方法一样好:
public void MainLoopImpl()
{
//empty method
}
现在创建MainLoop
实例:
var mLoop = new MainLoop(MainLoopImpl);
//or alternative syntax
MainLoop mLoop = MainLoopImpl;
//CALL Run
MessagePump.Run(form, mLoop);
this MSDN page详细解释了有关声明,创建和使用代理(包括lambda expression
声明方式)的详细信息。